@culturefy/shared 1.0.72 → 1.0.74
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/build/cjs/enums/secretKeys.enum.js +1 -0
- package/build/cjs/enums/secretKeys.enum.js.map +1 -1
- package/build/cjs/index.js +6 -0
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/service/internal-api.js +66 -0
- package/build/cjs/service/internal-api.js.map +1 -0
- package/build/cjs/utils/index.js +6 -0
- package/build/cjs/utils/index.js.map +1 -1
- package/build/cjs/utils/service-bus-queue.js +31 -0
- package/build/cjs/utils/service-bus-queue.js.map +1 -0
- package/build/esm/enums/secretKeys.enum.js +1 -0
- package/build/esm/enums/secretKeys.enum.js.map +1 -1
- package/build/esm/index.js +1 -0
- package/build/esm/index.js.map +1 -1
- package/build/esm/service/internal-api.js +60 -0
- package/build/esm/service/internal-api.js.map +1 -0
- package/build/esm/utils/index.js +1 -0
- package/build/esm/utils/index.js.map +1 -1
- package/build/esm/utils/service-bus-queue.js +27 -0
- package/build/esm/utils/service-bus-queue.js.map +1 -0
- package/build/src/enums/secretKeys.enum.d.ts +1 -0
- package/build/src/enums/secretKeys.enum.js +1 -0
- package/build/src/enums/secretKeys.enum.js.map +1 -1
- package/build/src/index.d.ts +1 -0
- package/build/src/index.js +1 -0
- package/build/src/index.js.map +1 -1
- package/build/src/service/internal-api.d.ts +18 -0
- package/build/src/service/internal-api.js +81 -0
- package/build/src/service/internal-api.js.map +1 -0
- package/build/src/utils/index.d.ts +1 -0
- package/build/src/utils/index.js +1 -0
- package/build/src/utils/index.js.map +1 -1
- package/build/src/utils/service-bus-queue.d.ts +13 -0
- package/build/src/utils/service-bus-queue.js +33 -0
- package/build/src/utils/service-bus-queue.js.map +1 -0
- package/package.json +2 -1
|
@@ -42,6 +42,7 @@ let AzureSecretKeysEnum = exports.AzureSecretKeysEnum = /*#__PURE__*/function (A
|
|
|
42
42
|
AzureSecretKeysEnum["GITHUB_TOKEN"] = "GITHUB-TOKEN";
|
|
43
43
|
AzureSecretKeysEnum["GITHUB_WORKFLOW_URL"] = "GITHUB-WORKFLOW-URL";
|
|
44
44
|
AzureSecretKeysEnum["DB_CONNECTION_STRING_ENCRYPTION_KEY"] = "DB-CONNECTION-STRING-ENCRYPTION-KEY";
|
|
45
|
+
AzureSecretKeysEnum["AGENTS_API_KEY"] = "AGENTS-API-KEY";
|
|
45
46
|
AzureSecretKeysEnum["REDIS_HOST"] = "REDIS-HOST";
|
|
46
47
|
AzureSecretKeysEnum["REDIS_KEY"] = "REDIS-KEY";
|
|
47
48
|
AzureSecretKeysEnum["REDIS_URL"] = "REDIS-URL";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretKeys.enum.js","names":["AzureSecretKeysEnum","exports"],"sources":["../../../src/enums/secretKeys.enum.ts"],"sourcesContent":["// Enum for secret keys\nexport enum AzureSecretKeysEnum {\n KEYCLOAK_ADMIN_CLIENT_SECRET = \"KEYCLOAK-ADMIN-CLIENT-SECRET\",\n KEYCLOAK_ADMIN_CLIENT_ID = \"KEYCLOAK-ADMIN-CLIENT-ID\",\n KEYCLOAK_BASE_URL = \"KEYCLOAK-BASE-URL\",\n STRIPE_PAYMENT_WEBHOOK_SECRET_KEY = \"Stripe-payment-webhook-secret-key\", // in-use\n STRIPE_PRODUCT_WEBHOOK_SECRET = \"Stripe-product-webhook-secret-key\", // in-use\n STRIPE_PRICE_WEBHOOK_SECRET = \"Stripe-price-webhook-secret-key\", // in-use\n EMAIL_SERVICE_URL = \"Email-Service-Url\", // in-use,\n DB_CONNECTING_STRING_AUTH = \"DB-CONNECTION-STRING-AUTH\",\n DB_CONNECTING_STRING_USER = \"DB-CONNECTION-STRING-USER\",\n DB_CONNECTING_STRING_PAYMENT = \"DB-CONNECTION-STRING-PAYMENT\",\n DB_CONNECTING_STRING_CORE = \"DB-CONNECTION-STRING-CORE\",\n DB_CONNECTING_STRING_BILLING = \"DB-CONNECTION-STRING-BILLING\",\n DB_CONNECTING_STRING_STAGING = \"DB-CONNECTION-STRING-STAGING\",\n DB_CONNECTING_STRING_BNT_DEV = \"DB-CONNECTION-STRING-BNT-DEV\",\n DB_CONNECTION_STRING_TENANT_BRIDGE = \"DB-CONNECTION-STRING-TENANT-BRIDGE\",\n SERVICE_BUS_CONNECTION_STRING = \"servicebus-connection-string\",\n STRIPE_CUSTOMER_SYNC_WEBHOOK_SECRET = \"stripe-customer-sync-webhook-secret-key\",\n STRIPE_INVOICE_SYNC_WEBHOOK_SECRET = \"stripe-invoice-sync-webhook-secret-key\",\n STRIPE_PRODUCT_SYNC_WEBHOOK_SECRET = \"stripe-product-sync-webhook-secret-key\",\n STRIPE_PRICE_SYNC_WEBHOOK_SECRET = \"stripe-price-sync-webhook-secret-key\",\n STRIPE_SECRET_KEY = \"Stripe-secret-key\",\n STRIPE_WEBHOOK_CUSTOMER_CREATED_SECRET_KEY = \"Stripe-Webhook-Customer-Created-Secret-Key\",\n STRIPE_SUBSCRIPTION_SYNC_WEBHOOK_SECRET = \"stripe-subscription-sync-webhook-secret-key\",\n FIREBASE_SERVICE_ACCOUNTS_VARIABLE = \"firebase_service_accounts_variable\",\n HMS_ACCESS_KEY=\"MEETING-HMS-ACCESS-KEY-APP-SECRET\",\n MEETING_ROOM_APP_SECRET=\"MEETING-ROOM-APP-SECRET\",\n BASE_DB_CLUSTER_CONNECTING_STRING_CHAT = \"BASE-DB-CLUSTER-CONNECTING-STRING-CHAT\",\n AUTH_SERVICE_AUTHENTICATION_URL = \"AUTH-SERVICE-AUTHENTICATION-URL\",\n GCP_PROJECT_ID=\"gcp-project-id\",\n PUBSUB_SERVICE_ACCOUNT_KEYS=\"pubsub-service-account-keys\",\n VAPI_TOKEN = \"vapi-token\",\n GITHUB_TOKEN = \"GITHUB-TOKEN\",\n GITHUB_WORKFLOW_URL = \"GITHUB-WORKFLOW-URL\",\n DB_CONNECTION_STRING_ENCRYPTION_KEY = \"DB-CONNECTION-STRING-ENCRYPTION-KEY\",\n\n REDIS_HOST=\"REDIS-HOST\",\n REDIS_KEY=\"REDIS-KEY\",\n REDIS_URL = \"REDIS-URL\",\n REDIS_PORT = \"REDIS-PORT\"\n}\n\n// AUTH-SERVICE-AUTHENTICATION-URL\n// https://culturefy-auth-staging.azurewebsites.net/api/verify\n\n// REFRESH-SESSION-URL"],"mappings":";;;;AAAA;AAAA,IACYA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAI4C;EAJ/DA,mBAAmB;EAKwC;EAL3DA,mBAAmB;EAMoC;EANvDA,mBAAmB;EAOY;EAP/BA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA,
|
|
1
|
+
{"version":3,"file":"secretKeys.enum.js","names":["AzureSecretKeysEnum","exports"],"sources":["../../../src/enums/secretKeys.enum.ts"],"sourcesContent":["// Enum for secret keys\nexport enum AzureSecretKeysEnum {\n KEYCLOAK_ADMIN_CLIENT_SECRET = \"KEYCLOAK-ADMIN-CLIENT-SECRET\",\n KEYCLOAK_ADMIN_CLIENT_ID = \"KEYCLOAK-ADMIN-CLIENT-ID\",\n KEYCLOAK_BASE_URL = \"KEYCLOAK-BASE-URL\",\n STRIPE_PAYMENT_WEBHOOK_SECRET_KEY = \"Stripe-payment-webhook-secret-key\", // in-use\n STRIPE_PRODUCT_WEBHOOK_SECRET = \"Stripe-product-webhook-secret-key\", // in-use\n STRIPE_PRICE_WEBHOOK_SECRET = \"Stripe-price-webhook-secret-key\", // in-use\n EMAIL_SERVICE_URL = \"Email-Service-Url\", // in-use,\n DB_CONNECTING_STRING_AUTH = \"DB-CONNECTION-STRING-AUTH\",\n DB_CONNECTING_STRING_USER = \"DB-CONNECTION-STRING-USER\",\n DB_CONNECTING_STRING_PAYMENT = \"DB-CONNECTION-STRING-PAYMENT\",\n DB_CONNECTING_STRING_CORE = \"DB-CONNECTION-STRING-CORE\",\n DB_CONNECTING_STRING_BILLING = \"DB-CONNECTION-STRING-BILLING\",\n DB_CONNECTING_STRING_STAGING = \"DB-CONNECTION-STRING-STAGING\",\n DB_CONNECTING_STRING_BNT_DEV = \"DB-CONNECTION-STRING-BNT-DEV\",\n DB_CONNECTION_STRING_TENANT_BRIDGE = \"DB-CONNECTION-STRING-TENANT-BRIDGE\",\n SERVICE_BUS_CONNECTION_STRING = \"servicebus-connection-string\",\n STRIPE_CUSTOMER_SYNC_WEBHOOK_SECRET = \"stripe-customer-sync-webhook-secret-key\",\n STRIPE_INVOICE_SYNC_WEBHOOK_SECRET = \"stripe-invoice-sync-webhook-secret-key\",\n STRIPE_PRODUCT_SYNC_WEBHOOK_SECRET = \"stripe-product-sync-webhook-secret-key\",\n STRIPE_PRICE_SYNC_WEBHOOK_SECRET = \"stripe-price-sync-webhook-secret-key\",\n STRIPE_SECRET_KEY = \"Stripe-secret-key\",\n STRIPE_WEBHOOK_CUSTOMER_CREATED_SECRET_KEY = \"Stripe-Webhook-Customer-Created-Secret-Key\",\n STRIPE_SUBSCRIPTION_SYNC_WEBHOOK_SECRET = \"stripe-subscription-sync-webhook-secret-key\",\n FIREBASE_SERVICE_ACCOUNTS_VARIABLE = \"firebase_service_accounts_variable\",\n HMS_ACCESS_KEY=\"MEETING-HMS-ACCESS-KEY-APP-SECRET\",\n MEETING_ROOM_APP_SECRET=\"MEETING-ROOM-APP-SECRET\",\n BASE_DB_CLUSTER_CONNECTING_STRING_CHAT = \"BASE-DB-CLUSTER-CONNECTING-STRING-CHAT\",\n AUTH_SERVICE_AUTHENTICATION_URL = \"AUTH-SERVICE-AUTHENTICATION-URL\",\n GCP_PROJECT_ID=\"gcp-project-id\",\n PUBSUB_SERVICE_ACCOUNT_KEYS=\"pubsub-service-account-keys\",\n VAPI_TOKEN = \"vapi-token\",\n GITHUB_TOKEN = \"GITHUB-TOKEN\",\n GITHUB_WORKFLOW_URL = \"GITHUB-WORKFLOW-URL\",\n DB_CONNECTION_STRING_ENCRYPTION_KEY = \"DB-CONNECTION-STRING-ENCRYPTION-KEY\",\n AGENTS_API_KEY = \"AGENTS-API-KEY\",\n\n REDIS_HOST=\"REDIS-HOST\",\n REDIS_KEY=\"REDIS-KEY\",\n REDIS_URL = \"REDIS-URL\",\n REDIS_PORT = \"REDIS-PORT\"\n}\n\n// AUTH-SERVICE-AUTHENTICATION-URL\n// https://culturefy-auth-staging.azurewebsites.net/api/verify\n\n// REFRESH-SESSION-URL"],"mappings":";;;;AAAA;AAAA,IACYA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAI4C;EAJ/DA,mBAAmB;EAKwC;EAL3DA,mBAAmB;EAMoC;EANvDA,mBAAmB;EAOY;EAP/BA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA,OA2C/B;AACA;AAEA","ignoreList":[]}
|
package/build/cjs/index.js
CHANGED
|
@@ -43,4 +43,10 @@ Object.keys(_repositories).forEach(function (key) {
|
|
|
43
43
|
if (key in exports && exports[key] === _repositories[key]) return;
|
|
44
44
|
exports[key] = _repositories[key];
|
|
45
45
|
});
|
|
46
|
+
var _internalApi = require("./service/internal-api");
|
|
47
|
+
Object.keys(_internalApi).forEach(function (key) {
|
|
48
|
+
if (key === "default" || key === "__esModule") return;
|
|
49
|
+
if (key in exports && exports[key] === _internalApi[key]) return;
|
|
50
|
+
exports[key] = _internalApi[key];
|
|
51
|
+
});
|
|
46
52
|
//# sourceMappingURL=index.js.map
|
package/build/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_types","require","Object","keys","forEach","key","exports","_enums","_utils","_cache","_middlewares","_constants","_repositories"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './types';\nexport * from './enums';\nexport * from './utils';\nexport * from './utils/cache';\nexport * from './middlewares';\nexport * from './constants';\nexport * from './repositories';\n"],"mappings":";;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,MAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,MAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,MAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,MAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,MAAA,CAAAF,GAAA;AAAA;AACA,IAAAG,MAAA,GAAAP,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAK,MAAA,EAAAJ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAG,MAAA,CAAAH,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAG,MAAA,CAAAH,GAAA;AAAA;AACA,IAAAI,MAAA,GAAAR,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAM,MAAA,EAAAL,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAI,MAAA,CAAAJ,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAI,MAAA,CAAAJ,GAAA;AAAA;AACA,IAAAK,YAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,YAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,YAAA,CAAAL,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAK,YAAA,CAAAL,GAAA;AAAA;AACA,IAAAM,UAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,UAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,UAAA,CAAAN,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAM,UAAA,CAAAN,GAAA;AAAA;AACA,IAAAO,aAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,aAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,aAAA,CAAAP,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAO,aAAA,CAAAP,GAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_types","require","Object","keys","forEach","key","exports","_enums","_utils","_cache","_middlewares","_constants","_repositories","_internalApi"],"sources":["../../src/index.ts"],"sourcesContent":["export * from './types';\nexport * from './enums';\nexport * from './utils';\nexport * from './utils/cache';\nexport * from './middlewares';\nexport * from './constants';\nexport * from './repositories';\nexport * from './service/internal-api';\n"],"mappings":";;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,MAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,MAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,MAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,MAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,MAAA,CAAAF,GAAA;AAAA;AACA,IAAAG,MAAA,GAAAP,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAK,MAAA,EAAAJ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAG,MAAA,CAAAH,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAG,MAAA,CAAAH,GAAA;AAAA;AACA,IAAAI,MAAA,GAAAR,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAM,MAAA,EAAAL,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAI,MAAA,CAAAJ,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAI,MAAA,CAAAJ,GAAA;AAAA;AACA,IAAAK,YAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,YAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,YAAA,CAAAL,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAK,YAAA,CAAAL,GAAA;AAAA;AACA,IAAAM,UAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,UAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,UAAA,CAAAN,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAM,UAAA,CAAAN,GAAA;AAAA;AACA,IAAAO,aAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,aAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,aAAA,CAAAP,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAO,aAAA,CAAAP,GAAA;AAAA;AACA,IAAAQ,YAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,YAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,YAAA,CAAAR,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAQ,YAAA,CAAAR,GAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.internalApiClient = exports.InternalApiClient = void 0;
|
|
5
|
+
const buildHeaders = auth => {
|
|
6
|
+
const headers = {
|
|
7
|
+
"x-internal-key": auth.internalKey
|
|
8
|
+
};
|
|
9
|
+
if (auth.tenantId) headers["x-tenant-id"] = auth.tenantId;
|
|
10
|
+
if (auth.businessId) headers["x-business-id"] = auth.businessId;
|
|
11
|
+
if (auth.appId) headers["x-app-id"] = auth.appId;
|
|
12
|
+
if (auth.email) headers["x-email"] = auth.email;
|
|
13
|
+
if (auth.name) headers["x-name"] = auth.name;
|
|
14
|
+
if (auth.userId) headers["x-user-id"] = auth.userId;
|
|
15
|
+
return headers;
|
|
16
|
+
};
|
|
17
|
+
const normalizeBaseUrl = baseUrl => baseUrl.replace(/\/+$/, "");
|
|
18
|
+
const resolveApiBaseUrlFromEnv = () => {
|
|
19
|
+
const env = (process.env.APPLICATION_ENV || "").toLowerCase();
|
|
20
|
+
const baseFromEnv = env === "dev" ? "https://api.dev.culturefy.app" : env === "stage" || env === "staging" ? "https://api.staging.culturefy.app" : env === "prod" || env === "production" ? "https://api.culturefy.app" : "";
|
|
21
|
+
if (!baseFromEnv) {
|
|
22
|
+
throw new Error("Missing SHARED_USER_SERVICE_URL, API_BASE_URL, or valid APPLICATION_ENV");
|
|
23
|
+
}
|
|
24
|
+
return baseFromEnv;
|
|
25
|
+
};
|
|
26
|
+
const getSharedUserBaseUrl = override => {
|
|
27
|
+
if (override) return normalizeBaseUrl(override);
|
|
28
|
+
const direct = process.env.SHARED_USER_SERVICE_URL;
|
|
29
|
+
if (direct) return normalizeBaseUrl(direct);
|
|
30
|
+
const apiBase = process.env.CULTUREFY_API_BASE_URL || process.env.API_BASE_URL;
|
|
31
|
+
if (apiBase) {
|
|
32
|
+
return `${normalizeBaseUrl(apiBase)}/shared-user`;
|
|
33
|
+
}
|
|
34
|
+
const baseFromEnv = resolveApiBaseUrlFromEnv();
|
|
35
|
+
return `${baseFromEnv}/shared-user`;
|
|
36
|
+
};
|
|
37
|
+
class InternalApiClient {
|
|
38
|
+
async getUserById(args) {
|
|
39
|
+
const baseUrl = getSharedUserBaseUrl(args.baseUrl);
|
|
40
|
+
const url = `${baseUrl}/v1/interservices/user/${args.userId}`;
|
|
41
|
+
const res = await fetch(url, {
|
|
42
|
+
method: "GET",
|
|
43
|
+
headers: buildHeaders(args.auth)
|
|
44
|
+
});
|
|
45
|
+
if (!res.ok) {
|
|
46
|
+
const text = await res.text();
|
|
47
|
+
throw new Error(`internal-api error ${res.status}: ${text}`);
|
|
48
|
+
}
|
|
49
|
+
return await res.json();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.InternalApiClient = InternalApiClient;
|
|
53
|
+
const internalApiClient = () => new InternalApiClient();
|
|
54
|
+
|
|
55
|
+
// const user = await client.getUserById({
|
|
56
|
+
// userId: "65f0b1c9e8c2a123456789ab",
|
|
57
|
+
// auth: {
|
|
58
|
+
// internalKey: "12345",
|
|
59
|
+
// tenantId: "69b47db5c2be5714989ca8ae",
|
|
60
|
+
// businessId: "69b47db5c2be5714989ca8ae",
|
|
61
|
+
// appId: "5x8jws1b",
|
|
62
|
+
// userId: "65f0b1c9e8c2a123456789ab",
|
|
63
|
+
// },
|
|
64
|
+
// });
|
|
65
|
+
exports.internalApiClient = internalApiClient;
|
|
66
|
+
//# sourceMappingURL=internal-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-api.js","names":["buildHeaders","auth","headers","internalKey","tenantId","businessId","appId","email","name","userId","normalizeBaseUrl","baseUrl","replace","resolveApiBaseUrlFromEnv","env","process","APPLICATION_ENV","toLowerCase","baseFromEnv","Error","getSharedUserBaseUrl","override","direct","SHARED_USER_SERVICE_URL","apiBase","CULTUREFY_API_BASE_URL","API_BASE_URL","InternalApiClient","getUserById","args","url","res","fetch","method","ok","text","status","json","exports","internalApiClient"],"sources":["../../../src/service/internal-api.ts"],"sourcesContent":["export type InternalAuthHeaders = {\n internalKey: string;\n tenantId?: string;\n businessId?: string;\n appId?: string;\n email?: string;\n name?: string;\n userId?: string;\n};\n\nexport type GetUserByIdArgs = {\n userId: string;\n auth: InternalAuthHeaders;\n baseUrl?: string;\n};\n\nconst buildHeaders = (auth: InternalAuthHeaders): Record<string, string> => {\n const headers: Record<string, string> = {\n \"x-internal-key\": auth.internalKey,\n };\n if (auth.tenantId) headers[\"x-tenant-id\"] = auth.tenantId;\n if (auth.businessId) headers[\"x-business-id\"] = auth.businessId;\n if (auth.appId) headers[\"x-app-id\"] = auth.appId;\n if (auth.email) headers[\"x-email\"] = auth.email;\n if (auth.name) headers[\"x-name\"] = auth.name;\n if (auth.userId) headers[\"x-user-id\"] = auth.userId;\n return headers;\n};\n\nconst normalizeBaseUrl = (baseUrl: string): string => baseUrl.replace(/\\/+$/, \"\");\n\nconst resolveApiBaseUrlFromEnv = (): string => {\n const env = (process.env.APPLICATION_ENV || \"\").toLowerCase();\n const baseFromEnv =\n env === \"dev\"\n ? \"https://api.dev.culturefy.app\"\n : env === \"stage\" || env === \"staging\"\n ? \"https://api.staging.culturefy.app\"\n : env === \"prod\" || env === \"production\"\n ? \"https://api.culturefy.app\"\n : \"\";\n\n if (!baseFromEnv) {\n throw new Error(\"Missing SHARED_USER_SERVICE_URL, API_BASE_URL, or valid APPLICATION_ENV\");\n }\n\n return baseFromEnv;\n};\n\nconst getSharedUserBaseUrl = (override?: string): string => {\n if (override) return normalizeBaseUrl(override);\n const direct = process.env.SHARED_USER_SERVICE_URL;\n if (direct) return normalizeBaseUrl(direct);\n const apiBase = process.env.CULTUREFY_API_BASE_URL || process.env.API_BASE_URL;\n if (apiBase) {\n return `${normalizeBaseUrl(apiBase)}/shared-user`;\n }\n\n const baseFromEnv = resolveApiBaseUrlFromEnv();\n return `${baseFromEnv}/shared-user`;\n};\n\nexport class InternalApiClient {\n async getUserById<T>(args: GetUserByIdArgs): Promise<T> {\n const baseUrl = getSharedUserBaseUrl(args.baseUrl);\n const url = `${baseUrl}/v1/interservices/user/${args.userId}`;\n const res = await fetch(url, {\n method: \"GET\",\n headers: buildHeaders(args.auth),\n });\n if (!res.ok) {\n const text = await res.text();\n throw new Error(`internal-api error ${res.status}: ${text}`);\n }\n return (await res.json()) as T;\n }\n}\n\nexport const internalApiClient = () => new InternalApiClient();\n\n// const user = await client.getUserById({\n// userId: \"65f0b1c9e8c2a123456789ab\",\n// auth: {\n// internalKey: \"12345\",\n// tenantId: \"69b47db5c2be5714989ca8ae\",\n// businessId: \"69b47db5c2be5714989ca8ae\",\n// appId: \"5x8jws1b\",\n// userId: \"65f0b1c9e8c2a123456789ab\",\n// },\n// });"],"mappings":"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","ignoreList":[]}
|
package/build/cjs/utils/index.js
CHANGED
|
@@ -43,4 +43,10 @@ Object.keys(_cache).forEach(function (key) {
|
|
|
43
43
|
if (key in exports && exports[key] === _cache[key]) return;
|
|
44
44
|
exports[key] = _cache[key];
|
|
45
45
|
});
|
|
46
|
+
var _serviceBusQueue = require("./service-bus-queue");
|
|
47
|
+
Object.keys(_serviceBusQueue).forEach(function (key) {
|
|
48
|
+
if (key === "default" || key === "__esModule") return;
|
|
49
|
+
if (key in exports && exports[key] === _serviceBusQueue[key]) return;
|
|
50
|
+
exports[key] = _serviceBusQueue[key];
|
|
51
|
+
});
|
|
46
52
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_secrets","require","Object","keys","forEach","key","exports","_response","_initializers","_mapper","_jwt","_middleware","_cache"],"sources":["../../../src/utils/index.ts"],"sourcesContent":["export * from './secrets';\nexport * from './response';\nexport * from './initializers';\nexport * from './mapper';\nexport * from './jwt';\nexport * from './middleware';\nexport * from './cache';\n"],"mappings":";;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,QAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,SAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,SAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,SAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,SAAA,CAAAF,GAAA;AAAA;AACA,IAAAG,aAAA,GAAAP,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAK,aAAA,EAAAJ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAG,aAAA,CAAAH,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAG,aAAA,CAAAH,GAAA;AAAA;AACA,IAAAI,OAAA,GAAAR,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAM,OAAA,EAAAL,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAI,OAAA,CAAAJ,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAI,OAAA,CAAAJ,GAAA;AAAA;AACA,IAAAK,IAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,IAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,IAAA,CAAAL,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAK,IAAA,CAAAL,GAAA;AAAA;AACA,IAAAM,WAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,WAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,WAAA,CAAAN,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAM,WAAA,CAAAN,GAAA;AAAA;AACA,IAAAO,MAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,MAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,MAAA,CAAAP,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAO,MAAA,CAAAP,GAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_secrets","require","Object","keys","forEach","key","exports","_response","_initializers","_mapper","_jwt","_middleware","_cache","_serviceBusQueue"],"sources":["../../../src/utils/index.ts"],"sourcesContent":["export * from './secrets';\nexport * from './response';\nexport * from './initializers';\nexport * from './mapper';\nexport * from './jwt';\nexport * from './middleware';\nexport * from './cache';\nexport * from './service-bus-queue';\n"],"mappings":";;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,QAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,SAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,SAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,SAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,SAAA,CAAAF,GAAA;AAAA;AACA,IAAAG,aAAA,GAAAP,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAK,aAAA,EAAAJ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAG,aAAA,CAAAH,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAG,aAAA,CAAAH,GAAA;AAAA;AACA,IAAAI,OAAA,GAAAR,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAM,OAAA,EAAAL,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAI,OAAA,CAAAJ,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAI,OAAA,CAAAJ,GAAA;AAAA;AACA,IAAAK,IAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,IAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,IAAA,CAAAL,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAK,IAAA,CAAAL,GAAA;AAAA;AACA,IAAAM,WAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,WAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,WAAA,CAAAN,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAM,WAAA,CAAAN,GAAA;AAAA;AACA,IAAAO,MAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,MAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,MAAA,CAAAP,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAO,MAAA,CAAAP,GAAA;AAAA;AACA,IAAAQ,gBAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,gBAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,gBAAA,CAAAR,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAQ,gBAAA,CAAAR,GAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.sendServiceBusQueueMessage = sendServiceBusQueueMessage;
|
|
5
|
+
var _serviceBus = require("@azure/service-bus");
|
|
6
|
+
/**
|
|
7
|
+
* Sends one message to an Azure Service Bus queue. Opens and closes the client per call.
|
|
8
|
+
* `payload` is JSON-stringified unless it is already a string (raw body).
|
|
9
|
+
*/
|
|
10
|
+
async function sendServiceBusQueueMessage(queueName, payload, options) {
|
|
11
|
+
var _options$connectionSt, _process$env$SERVICE_;
|
|
12
|
+
const connectionString = (options == null || (_options$connectionSt = options.connectionString) == null ? void 0 : _options$connectionSt.trim()) || ((_process$env$SERVICE_ = process.env.SERVICE_BUS_CONNECTION_STRING) == null ? void 0 : _process$env$SERVICE_.trim());
|
|
13
|
+
if (!connectionString) {
|
|
14
|
+
throw new Error("Service Bus connection string missing: pass options.connectionString or set SERVICE_BUS_CONNECTION_STRING");
|
|
15
|
+
}
|
|
16
|
+
const body = typeof payload === "string" ? payload : JSON.stringify(payload);
|
|
17
|
+
const client = new _serviceBus.ServiceBusClient(connectionString);
|
|
18
|
+
const sender = client.createSender(queueName);
|
|
19
|
+
try {
|
|
20
|
+
await sender.sendMessages({
|
|
21
|
+
body,
|
|
22
|
+
...((options == null ? void 0 : options.applicationProperties) != null && Object.keys(options.applicationProperties).length > 0 ? {
|
|
23
|
+
applicationProperties: options.applicationProperties
|
|
24
|
+
} : {})
|
|
25
|
+
});
|
|
26
|
+
} finally {
|
|
27
|
+
await sender.close();
|
|
28
|
+
await client.close();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=service-bus-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-bus-queue.js","names":["_serviceBus","require","sendServiceBusQueueMessage","queueName","payload","options","_options$connectionSt","_process$env$SERVICE_","connectionString","trim","process","env","SERVICE_BUS_CONNECTION_STRING","Error","body","JSON","stringify","client","ServiceBusClient","sender","createSender","sendMessages","applicationProperties","Object","keys","length","close"],"sources":["../../../src/utils/service-bus-queue.ts"],"sourcesContent":["import { ServiceBusClient } from \"@azure/service-bus\";\n\nexport type ServiceBusQueueApplicationProperties = Record<\n string,\n string | number | boolean | Date\n>;\n\nexport type SendServiceBusQueueMessageOptions = {\n /**\n * Defaults to `process.env.SERVICE_BUS_CONNECTION_STRING` when omitted.\n */\n connectionString?: string;\n applicationProperties?: ServiceBusQueueApplicationProperties;\n};\n\n/**\n * Sends one message to an Azure Service Bus queue. Opens and closes the client per call.\n * `payload` is JSON-stringified unless it is already a string (raw body).\n */\nexport async function sendServiceBusQueueMessage(\n queueName: string,\n payload: unknown,\n options?: SendServiceBusQueueMessageOptions,\n): Promise<void> {\n const connectionString =\n options?.connectionString?.trim() ||\n process.env.SERVICE_BUS_CONNECTION_STRING?.trim();\n if (!connectionString) {\n throw new Error(\n \"Service Bus connection string missing: pass options.connectionString or set SERVICE_BUS_CONNECTION_STRING\",\n );\n }\n\n const body =\n typeof payload === \"string\" ? payload : JSON.stringify(payload);\n\n const client = new ServiceBusClient(connectionString);\n const sender = client.createSender(queueName);\n try {\n await sender.sendMessages({\n body,\n ...(options?.applicationProperties != null &&\n Object.keys(options.applicationProperties).length > 0\n ? { applicationProperties: options.applicationProperties }\n : {}),\n });\n } finally {\n await sender.close();\n await client.close();\n }\n}\n"],"mappings":";;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAeA;AACA;AACA;AACA;AACO,eAAeC,0BAA0BA,CAC9CC,SAAiB,EACjBC,OAAgB,EAChBC,OAA2C,EAC5B;EAAA,IAAAC,qBAAA,EAAAC,qBAAA;EACf,MAAMC,gBAAgB,GACpB,CAAAH,OAAO,aAAAC,qBAAA,GAAPD,OAAO,CAAEG,gBAAgB,qBAAzBF,qBAAA,CAA2BG,IAAI,CAAC,CAAC,OAAAF,qBAAA,GACjCG,OAAO,CAACC,GAAG,CAACC,6BAA6B,qBAAzCL,qBAAA,CAA2CE,IAAI,CAAC,CAAC;EACnD,IAAI,CAACD,gBAAgB,EAAE;IACrB,MAAM,IAAIK,KAAK,CACb,2GACF,CAAC;EACH;EAEA,MAAMC,IAAI,GACR,OAAOV,OAAO,KAAK,QAAQ,GAAGA,OAAO,GAAGW,IAAI,CAACC,SAAS,CAACZ,OAAO,CAAC;EAEjE,MAAMa,MAAM,GAAG,IAAIC,4BAAgB,CAACV,gBAAgB,CAAC;EACrD,MAAMW,MAAM,GAAGF,MAAM,CAACG,YAAY,CAACjB,SAAS,CAAC;EAC7C,IAAI;IACF,MAAMgB,MAAM,CAACE,YAAY,CAAC;MACxBP,IAAI;MACJ,IAAI,CAAAT,OAAO,oBAAPA,OAAO,CAAEiB,qBAAqB,KAAI,IAAI,IAC1CC,MAAM,CAACC,IAAI,CAACnB,OAAO,CAACiB,qBAAqB,CAAC,CAACG,MAAM,GAAG,CAAC,GACjD;QAAEH,qBAAqB,EAAEjB,OAAO,CAACiB;MAAsB,CAAC,GACxD,CAAC,CAAC;IACR,CAAC,CAAC;EACJ,CAAC,SAAS;IACR,MAAMH,MAAM,CAACO,KAAK,CAAC,CAAC;IACpB,MAAMT,MAAM,CAACS,KAAK,CAAC,CAAC;EACtB;AACF","ignoreList":[]}
|
|
@@ -38,6 +38,7 @@ export let AzureSecretKeysEnum = /*#__PURE__*/function (AzureSecretKeysEnum) {
|
|
|
38
38
|
AzureSecretKeysEnum["GITHUB_TOKEN"] = "GITHUB-TOKEN";
|
|
39
39
|
AzureSecretKeysEnum["GITHUB_WORKFLOW_URL"] = "GITHUB-WORKFLOW-URL";
|
|
40
40
|
AzureSecretKeysEnum["DB_CONNECTION_STRING_ENCRYPTION_KEY"] = "DB-CONNECTION-STRING-ENCRYPTION-KEY";
|
|
41
|
+
AzureSecretKeysEnum["AGENTS_API_KEY"] = "AGENTS-API-KEY";
|
|
41
42
|
AzureSecretKeysEnum["REDIS_HOST"] = "REDIS-HOST";
|
|
42
43
|
AzureSecretKeysEnum["REDIS_KEY"] = "REDIS-KEY";
|
|
43
44
|
AzureSecretKeysEnum["REDIS_URL"] = "REDIS-URL";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretKeys.enum.js","names":["AzureSecretKeysEnum"],"sources":["../../../src/enums/secretKeys.enum.ts"],"sourcesContent":["// Enum for secret keys\nexport enum AzureSecretKeysEnum {\n KEYCLOAK_ADMIN_CLIENT_SECRET = \"KEYCLOAK-ADMIN-CLIENT-SECRET\",\n KEYCLOAK_ADMIN_CLIENT_ID = \"KEYCLOAK-ADMIN-CLIENT-ID\",\n KEYCLOAK_BASE_URL = \"KEYCLOAK-BASE-URL\",\n STRIPE_PAYMENT_WEBHOOK_SECRET_KEY = \"Stripe-payment-webhook-secret-key\", // in-use\n STRIPE_PRODUCT_WEBHOOK_SECRET = \"Stripe-product-webhook-secret-key\", // in-use\n STRIPE_PRICE_WEBHOOK_SECRET = \"Stripe-price-webhook-secret-key\", // in-use\n EMAIL_SERVICE_URL = \"Email-Service-Url\", // in-use,\n DB_CONNECTING_STRING_AUTH = \"DB-CONNECTION-STRING-AUTH\",\n DB_CONNECTING_STRING_USER = \"DB-CONNECTION-STRING-USER\",\n DB_CONNECTING_STRING_PAYMENT = \"DB-CONNECTION-STRING-PAYMENT\",\n DB_CONNECTING_STRING_CORE = \"DB-CONNECTION-STRING-CORE\",\n DB_CONNECTING_STRING_BILLING = \"DB-CONNECTION-STRING-BILLING\",\n DB_CONNECTING_STRING_STAGING = \"DB-CONNECTION-STRING-STAGING\",\n DB_CONNECTING_STRING_BNT_DEV = \"DB-CONNECTION-STRING-BNT-DEV\",\n DB_CONNECTION_STRING_TENANT_BRIDGE = \"DB-CONNECTION-STRING-TENANT-BRIDGE\",\n SERVICE_BUS_CONNECTION_STRING = \"servicebus-connection-string\",\n STRIPE_CUSTOMER_SYNC_WEBHOOK_SECRET = \"stripe-customer-sync-webhook-secret-key\",\n STRIPE_INVOICE_SYNC_WEBHOOK_SECRET = \"stripe-invoice-sync-webhook-secret-key\",\n STRIPE_PRODUCT_SYNC_WEBHOOK_SECRET = \"stripe-product-sync-webhook-secret-key\",\n STRIPE_PRICE_SYNC_WEBHOOK_SECRET = \"stripe-price-sync-webhook-secret-key\",\n STRIPE_SECRET_KEY = \"Stripe-secret-key\",\n STRIPE_WEBHOOK_CUSTOMER_CREATED_SECRET_KEY = \"Stripe-Webhook-Customer-Created-Secret-Key\",\n STRIPE_SUBSCRIPTION_SYNC_WEBHOOK_SECRET = \"stripe-subscription-sync-webhook-secret-key\",\n FIREBASE_SERVICE_ACCOUNTS_VARIABLE = \"firebase_service_accounts_variable\",\n HMS_ACCESS_KEY=\"MEETING-HMS-ACCESS-KEY-APP-SECRET\",\n MEETING_ROOM_APP_SECRET=\"MEETING-ROOM-APP-SECRET\",\n BASE_DB_CLUSTER_CONNECTING_STRING_CHAT = \"BASE-DB-CLUSTER-CONNECTING-STRING-CHAT\",\n AUTH_SERVICE_AUTHENTICATION_URL = \"AUTH-SERVICE-AUTHENTICATION-URL\",\n GCP_PROJECT_ID=\"gcp-project-id\",\n PUBSUB_SERVICE_ACCOUNT_KEYS=\"pubsub-service-account-keys\",\n VAPI_TOKEN = \"vapi-token\",\n GITHUB_TOKEN = \"GITHUB-TOKEN\",\n GITHUB_WORKFLOW_URL = \"GITHUB-WORKFLOW-URL\",\n DB_CONNECTION_STRING_ENCRYPTION_KEY = \"DB-CONNECTION-STRING-ENCRYPTION-KEY\",\n\n REDIS_HOST=\"REDIS-HOST\",\n REDIS_KEY=\"REDIS-KEY\",\n REDIS_URL = \"REDIS-URL\",\n REDIS_PORT = \"REDIS-PORT\"\n}\n\n// AUTH-SERVICE-AUTHENTICATION-URL\n// https://culturefy-auth-staging.azurewebsites.net/api/verify\n\n// REFRESH-SESSION-URL"],"mappings":"AAAA;AACA,WAAYA,mBAAmB,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAI4C;EAJ/DA,mBAAmB;EAKwC;EAL3DA,mBAAmB;EAMoC;EANvDA,mBAAmB;EAOY;EAP/BA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;;
|
|
1
|
+
{"version":3,"file":"secretKeys.enum.js","names":["AzureSecretKeysEnum"],"sources":["../../../src/enums/secretKeys.enum.ts"],"sourcesContent":["// Enum for secret keys\nexport enum AzureSecretKeysEnum {\n KEYCLOAK_ADMIN_CLIENT_SECRET = \"KEYCLOAK-ADMIN-CLIENT-SECRET\",\n KEYCLOAK_ADMIN_CLIENT_ID = \"KEYCLOAK-ADMIN-CLIENT-ID\",\n KEYCLOAK_BASE_URL = \"KEYCLOAK-BASE-URL\",\n STRIPE_PAYMENT_WEBHOOK_SECRET_KEY = \"Stripe-payment-webhook-secret-key\", // in-use\n STRIPE_PRODUCT_WEBHOOK_SECRET = \"Stripe-product-webhook-secret-key\", // in-use\n STRIPE_PRICE_WEBHOOK_SECRET = \"Stripe-price-webhook-secret-key\", // in-use\n EMAIL_SERVICE_URL = \"Email-Service-Url\", // in-use,\n DB_CONNECTING_STRING_AUTH = \"DB-CONNECTION-STRING-AUTH\",\n DB_CONNECTING_STRING_USER = \"DB-CONNECTION-STRING-USER\",\n DB_CONNECTING_STRING_PAYMENT = \"DB-CONNECTION-STRING-PAYMENT\",\n DB_CONNECTING_STRING_CORE = \"DB-CONNECTION-STRING-CORE\",\n DB_CONNECTING_STRING_BILLING = \"DB-CONNECTION-STRING-BILLING\",\n DB_CONNECTING_STRING_STAGING = \"DB-CONNECTION-STRING-STAGING\",\n DB_CONNECTING_STRING_BNT_DEV = \"DB-CONNECTION-STRING-BNT-DEV\",\n DB_CONNECTION_STRING_TENANT_BRIDGE = \"DB-CONNECTION-STRING-TENANT-BRIDGE\",\n SERVICE_BUS_CONNECTION_STRING = \"servicebus-connection-string\",\n STRIPE_CUSTOMER_SYNC_WEBHOOK_SECRET = \"stripe-customer-sync-webhook-secret-key\",\n STRIPE_INVOICE_SYNC_WEBHOOK_SECRET = \"stripe-invoice-sync-webhook-secret-key\",\n STRIPE_PRODUCT_SYNC_WEBHOOK_SECRET = \"stripe-product-sync-webhook-secret-key\",\n STRIPE_PRICE_SYNC_WEBHOOK_SECRET = \"stripe-price-sync-webhook-secret-key\",\n STRIPE_SECRET_KEY = \"Stripe-secret-key\",\n STRIPE_WEBHOOK_CUSTOMER_CREATED_SECRET_KEY = \"Stripe-Webhook-Customer-Created-Secret-Key\",\n STRIPE_SUBSCRIPTION_SYNC_WEBHOOK_SECRET = \"stripe-subscription-sync-webhook-secret-key\",\n FIREBASE_SERVICE_ACCOUNTS_VARIABLE = \"firebase_service_accounts_variable\",\n HMS_ACCESS_KEY=\"MEETING-HMS-ACCESS-KEY-APP-SECRET\",\n MEETING_ROOM_APP_SECRET=\"MEETING-ROOM-APP-SECRET\",\n BASE_DB_CLUSTER_CONNECTING_STRING_CHAT = \"BASE-DB-CLUSTER-CONNECTING-STRING-CHAT\",\n AUTH_SERVICE_AUTHENTICATION_URL = \"AUTH-SERVICE-AUTHENTICATION-URL\",\n GCP_PROJECT_ID=\"gcp-project-id\",\n PUBSUB_SERVICE_ACCOUNT_KEYS=\"pubsub-service-account-keys\",\n VAPI_TOKEN = \"vapi-token\",\n GITHUB_TOKEN = \"GITHUB-TOKEN\",\n GITHUB_WORKFLOW_URL = \"GITHUB-WORKFLOW-URL\",\n DB_CONNECTION_STRING_ENCRYPTION_KEY = \"DB-CONNECTION-STRING-ENCRYPTION-KEY\",\n AGENTS_API_KEY = \"AGENTS-API-KEY\",\n\n REDIS_HOST=\"REDIS-HOST\",\n REDIS_KEY=\"REDIS-KEY\",\n REDIS_URL = \"REDIS-URL\",\n REDIS_PORT = \"REDIS-PORT\"\n}\n\n// AUTH-SERVICE-AUTHENTICATION-URL\n// https://culturefy-auth-staging.azurewebsites.net/api/verify\n\n// REFRESH-SESSION-URL"],"mappings":"AAAA;AACA,WAAYA,mBAAmB,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAI4C;EAJ/DA,mBAAmB;EAKwC;EAL3DA,mBAAmB;EAMoC;EANvDA,mBAAmB;EAOY;EAP/BA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;;AA2C/B;AACA;;AAEA","ignoreList":[]}
|
package/build/esm/index.js
CHANGED
package/build/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export * from './types';\nexport * from './enums';\nexport * from './utils';\nexport * from './utils/cache';\nexport * from './middlewares';\nexport * from './constants';\nexport * from './repositories';\n"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B,cAAc,aAAa;AAC3B,cAAc,gBAAgB","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":["export * from './types';\nexport * from './enums';\nexport * from './utils';\nexport * from './utils/cache';\nexport * from './middlewares';\nexport * from './constants';\nexport * from './repositories';\nexport * from './service/internal-api';\n"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B,cAAc,aAAa;AAC3B,cAAc,gBAAgB;AAC9B,cAAc,wBAAwB","ignoreList":[]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
const buildHeaders = auth => {
|
|
2
|
+
const headers = {
|
|
3
|
+
"x-internal-key": auth.internalKey
|
|
4
|
+
};
|
|
5
|
+
if (auth.tenantId) headers["x-tenant-id"] = auth.tenantId;
|
|
6
|
+
if (auth.businessId) headers["x-business-id"] = auth.businessId;
|
|
7
|
+
if (auth.appId) headers["x-app-id"] = auth.appId;
|
|
8
|
+
if (auth.email) headers["x-email"] = auth.email;
|
|
9
|
+
if (auth.name) headers["x-name"] = auth.name;
|
|
10
|
+
if (auth.userId) headers["x-user-id"] = auth.userId;
|
|
11
|
+
return headers;
|
|
12
|
+
};
|
|
13
|
+
const normalizeBaseUrl = baseUrl => baseUrl.replace(/\/+$/, "");
|
|
14
|
+
const resolveApiBaseUrlFromEnv = () => {
|
|
15
|
+
const env = (process.env.APPLICATION_ENV || "").toLowerCase();
|
|
16
|
+
const baseFromEnv = env === "dev" ? "https://api.dev.culturefy.app" : env === "stage" || env === "staging" ? "https://api.staging.culturefy.app" : env === "prod" || env === "production" ? "https://api.culturefy.app" : "";
|
|
17
|
+
if (!baseFromEnv) {
|
|
18
|
+
throw new Error("Missing SHARED_USER_SERVICE_URL, API_BASE_URL, or valid APPLICATION_ENV");
|
|
19
|
+
}
|
|
20
|
+
return baseFromEnv;
|
|
21
|
+
};
|
|
22
|
+
const getSharedUserBaseUrl = override => {
|
|
23
|
+
if (override) return normalizeBaseUrl(override);
|
|
24
|
+
const direct = process.env.SHARED_USER_SERVICE_URL;
|
|
25
|
+
if (direct) return normalizeBaseUrl(direct);
|
|
26
|
+
const apiBase = process.env.CULTUREFY_API_BASE_URL || process.env.API_BASE_URL;
|
|
27
|
+
if (apiBase) {
|
|
28
|
+
return `${normalizeBaseUrl(apiBase)}/shared-user`;
|
|
29
|
+
}
|
|
30
|
+
const baseFromEnv = resolveApiBaseUrlFromEnv();
|
|
31
|
+
return `${baseFromEnv}/shared-user`;
|
|
32
|
+
};
|
|
33
|
+
export class InternalApiClient {
|
|
34
|
+
async getUserById(args) {
|
|
35
|
+
const baseUrl = getSharedUserBaseUrl(args.baseUrl);
|
|
36
|
+
const url = `${baseUrl}/v1/interservices/user/${args.userId}`;
|
|
37
|
+
const res = await fetch(url, {
|
|
38
|
+
method: "GET",
|
|
39
|
+
headers: buildHeaders(args.auth)
|
|
40
|
+
});
|
|
41
|
+
if (!res.ok) {
|
|
42
|
+
const text = await res.text();
|
|
43
|
+
throw new Error(`internal-api error ${res.status}: ${text}`);
|
|
44
|
+
}
|
|
45
|
+
return await res.json();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export const internalApiClient = () => new InternalApiClient();
|
|
49
|
+
|
|
50
|
+
// const user = await client.getUserById({
|
|
51
|
+
// userId: "65f0b1c9e8c2a123456789ab",
|
|
52
|
+
// auth: {
|
|
53
|
+
// internalKey: "12345",
|
|
54
|
+
// tenantId: "69b47db5c2be5714989ca8ae",
|
|
55
|
+
// businessId: "69b47db5c2be5714989ca8ae",
|
|
56
|
+
// appId: "5x8jws1b",
|
|
57
|
+
// userId: "65f0b1c9e8c2a123456789ab",
|
|
58
|
+
// },
|
|
59
|
+
// });
|
|
60
|
+
//# sourceMappingURL=internal-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-api.js","names":["buildHeaders","auth","headers","internalKey","tenantId","businessId","appId","email","name","userId","normalizeBaseUrl","baseUrl","replace","resolveApiBaseUrlFromEnv","env","process","APPLICATION_ENV","toLowerCase","baseFromEnv","Error","getSharedUserBaseUrl","override","direct","SHARED_USER_SERVICE_URL","apiBase","CULTUREFY_API_BASE_URL","API_BASE_URL","InternalApiClient","getUserById","args","url","res","fetch","method","ok","text","status","json","internalApiClient"],"sources":["../../../src/service/internal-api.ts"],"sourcesContent":["export type InternalAuthHeaders = {\n internalKey: string;\n tenantId?: string;\n businessId?: string;\n appId?: string;\n email?: string;\n name?: string;\n userId?: string;\n};\n\nexport type GetUserByIdArgs = {\n userId: string;\n auth: InternalAuthHeaders;\n baseUrl?: string;\n};\n\nconst buildHeaders = (auth: InternalAuthHeaders): Record<string, string> => {\n const headers: Record<string, string> = {\n \"x-internal-key\": auth.internalKey,\n };\n if (auth.tenantId) headers[\"x-tenant-id\"] = auth.tenantId;\n if (auth.businessId) headers[\"x-business-id\"] = auth.businessId;\n if (auth.appId) headers[\"x-app-id\"] = auth.appId;\n if (auth.email) headers[\"x-email\"] = auth.email;\n if (auth.name) headers[\"x-name\"] = auth.name;\n if (auth.userId) headers[\"x-user-id\"] = auth.userId;\n return headers;\n};\n\nconst normalizeBaseUrl = (baseUrl: string): string => baseUrl.replace(/\\/+$/, \"\");\n\nconst resolveApiBaseUrlFromEnv = (): string => {\n const env = (process.env.APPLICATION_ENV || \"\").toLowerCase();\n const baseFromEnv =\n env === \"dev\"\n ? \"https://api.dev.culturefy.app\"\n : env === \"stage\" || env === \"staging\"\n ? \"https://api.staging.culturefy.app\"\n : env === \"prod\" || env === \"production\"\n ? \"https://api.culturefy.app\"\n : \"\";\n\n if (!baseFromEnv) {\n throw new Error(\"Missing SHARED_USER_SERVICE_URL, API_BASE_URL, or valid APPLICATION_ENV\");\n }\n\n return baseFromEnv;\n};\n\nconst getSharedUserBaseUrl = (override?: string): string => {\n if (override) return normalizeBaseUrl(override);\n const direct = process.env.SHARED_USER_SERVICE_URL;\n if (direct) return normalizeBaseUrl(direct);\n const apiBase = process.env.CULTUREFY_API_BASE_URL || process.env.API_BASE_URL;\n if (apiBase) {\n return `${normalizeBaseUrl(apiBase)}/shared-user`;\n }\n\n const baseFromEnv = resolveApiBaseUrlFromEnv();\n return `${baseFromEnv}/shared-user`;\n};\n\nexport class InternalApiClient {\n async getUserById<T>(args: GetUserByIdArgs): Promise<T> {\n const baseUrl = getSharedUserBaseUrl(args.baseUrl);\n const url = `${baseUrl}/v1/interservices/user/${args.userId}`;\n const res = await fetch(url, {\n method: \"GET\",\n headers: buildHeaders(args.auth),\n });\n if (!res.ok) {\n const text = await res.text();\n throw new Error(`internal-api error ${res.status}: ${text}`);\n }\n return (await res.json()) as T;\n }\n}\n\nexport const internalApiClient = () => new InternalApiClient();\n\n// const user = await client.getUserById({\n// userId: \"65f0b1c9e8c2a123456789ab\",\n// auth: {\n// internalKey: \"12345\",\n// tenantId: \"69b47db5c2be5714989ca8ae\",\n// businessId: \"69b47db5c2be5714989ca8ae\",\n// appId: \"5x8jws1b\",\n// userId: \"65f0b1c9e8c2a123456789ab\",\n// },\n// });"],"mappings":"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","ignoreList":[]}
|
package/build/esm/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/index.ts"],"sourcesContent":["export * from './secrets';\nexport * from './response';\nexport * from './initializers';\nexport * from './mapper';\nexport * from './jwt';\nexport * from './middleware';\nexport * from './cache';\n"],"mappings":"AAAA,cAAc,WAAW;AACzB,cAAc,YAAY;AAC1B,cAAc,gBAAgB;AAC9B,cAAc,UAAU;AACxB,cAAc,OAAO;AACrB,cAAc,cAAc;AAC5B,cAAc,SAAS","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/utils/index.ts"],"sourcesContent":["export * from './secrets';\nexport * from './response';\nexport * from './initializers';\nexport * from './mapper';\nexport * from './jwt';\nexport * from './middleware';\nexport * from './cache';\nexport * from './service-bus-queue';\n"],"mappings":"AAAA,cAAc,WAAW;AACzB,cAAc,YAAY;AAC1B,cAAc,gBAAgB;AAC9B,cAAc,UAAU;AACxB,cAAc,OAAO;AACrB,cAAc,cAAc;AAC5B,cAAc,SAAS;AACvB,cAAc,qBAAqB","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import { ServiceBusClient } from "@azure/service-bus";
|
|
3
|
+
/**
|
|
4
|
+
* Sends one message to an Azure Service Bus queue. Opens and closes the client per call.
|
|
5
|
+
* `payload` is JSON-stringified unless it is already a string (raw body).
|
|
6
|
+
*/
|
|
7
|
+
export async function sendServiceBusQueueMessage(queueName, payload, options) {
|
|
8
|
+
var _options$connectionSt, _process$env$SERVICE_;
|
|
9
|
+
const connectionString = (options == null || (_options$connectionSt = options.connectionString) == null ? void 0 : _options$connectionSt.trim()) || ((_process$env$SERVICE_ = process.env.SERVICE_BUS_CONNECTION_STRING) == null ? void 0 : _process$env$SERVICE_.trim());
|
|
10
|
+
if (!connectionString) {
|
|
11
|
+
throw new Error("Service Bus connection string missing: pass options.connectionString or set SERVICE_BUS_CONNECTION_STRING");
|
|
12
|
+
}
|
|
13
|
+
const body = typeof payload === "string" ? payload : JSON.stringify(payload);
|
|
14
|
+
const client = new ServiceBusClient(connectionString);
|
|
15
|
+
const sender = client.createSender(queueName);
|
|
16
|
+
try {
|
|
17
|
+
await sender.sendMessages(_extends({
|
|
18
|
+
body
|
|
19
|
+
}, (options == null ? void 0 : options.applicationProperties) != null && Object.keys(options.applicationProperties).length > 0 ? {
|
|
20
|
+
applicationProperties: options.applicationProperties
|
|
21
|
+
} : {}));
|
|
22
|
+
} finally {
|
|
23
|
+
await sender.close();
|
|
24
|
+
await client.close();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=service-bus-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-bus-queue.js","names":["ServiceBusClient","sendServiceBusQueueMessage","queueName","payload","options","_options$connectionSt","_process$env$SERVICE_","connectionString","trim","process","env","SERVICE_BUS_CONNECTION_STRING","Error","body","JSON","stringify","client","sender","createSender","sendMessages","_extends","applicationProperties","Object","keys","length","close"],"sources":["../../../src/utils/service-bus-queue.ts"],"sourcesContent":["import { ServiceBusClient } from \"@azure/service-bus\";\n\nexport type ServiceBusQueueApplicationProperties = Record<\n string,\n string | number | boolean | Date\n>;\n\nexport type SendServiceBusQueueMessageOptions = {\n /**\n * Defaults to `process.env.SERVICE_BUS_CONNECTION_STRING` when omitted.\n */\n connectionString?: string;\n applicationProperties?: ServiceBusQueueApplicationProperties;\n};\n\n/**\n * Sends one message to an Azure Service Bus queue. Opens and closes the client per call.\n * `payload` is JSON-stringified unless it is already a string (raw body).\n */\nexport async function sendServiceBusQueueMessage(\n queueName: string,\n payload: unknown,\n options?: SendServiceBusQueueMessageOptions,\n): Promise<void> {\n const connectionString =\n options?.connectionString?.trim() ||\n process.env.SERVICE_BUS_CONNECTION_STRING?.trim();\n if (!connectionString) {\n throw new Error(\n \"Service Bus connection string missing: pass options.connectionString or set SERVICE_BUS_CONNECTION_STRING\",\n );\n }\n\n const body =\n typeof payload === \"string\" ? payload : JSON.stringify(payload);\n\n const client = new ServiceBusClient(connectionString);\n const sender = client.createSender(queueName);\n try {\n await sender.sendMessages({\n body,\n ...(options?.applicationProperties != null &&\n Object.keys(options.applicationProperties).length > 0\n ? { applicationProperties: options.applicationProperties }\n : {}),\n });\n } finally {\n await sender.close();\n await client.close();\n }\n}\n"],"mappings":";AAAA,SAASA,gBAAgB,QAAQ,oBAAoB;AAerD;AACA;AACA;AACA;AACA,OAAO,eAAeC,0BAA0BA,CAC9CC,SAAiB,EACjBC,OAAgB,EAChBC,OAA2C,EAC5B;EAAA,IAAAC,qBAAA,EAAAC,qBAAA;EACf,MAAMC,gBAAgB,GACpB,CAAAH,OAAO,aAAAC,qBAAA,GAAPD,OAAO,CAAEG,gBAAgB,qBAAzBF,qBAAA,CAA2BG,IAAI,CAAC,CAAC,OAAAF,qBAAA,GACjCG,OAAO,CAACC,GAAG,CAACC,6BAA6B,qBAAzCL,qBAAA,CAA2CE,IAAI,CAAC,CAAC;EACnD,IAAI,CAACD,gBAAgB,EAAE;IACrB,MAAM,IAAIK,KAAK,CACb,2GACF,CAAC;EACH;EAEA,MAAMC,IAAI,GACR,OAAOV,OAAO,KAAK,QAAQ,GAAGA,OAAO,GAAGW,IAAI,CAACC,SAAS,CAACZ,OAAO,CAAC;EAEjE,MAAMa,MAAM,GAAG,IAAIhB,gBAAgB,CAACO,gBAAgB,CAAC;EACrD,MAAMU,MAAM,GAAGD,MAAM,CAACE,YAAY,CAAChB,SAAS,CAAC;EAC7C,IAAI;IACF,MAAMe,MAAM,CAACE,YAAY,CAAAC,QAAA;MACvBP;IAAI,GACA,CAAAT,OAAO,oBAAPA,OAAO,CAAEiB,qBAAqB,KAAI,IAAI,IAC1CC,MAAM,CAACC,IAAI,CAACnB,OAAO,CAACiB,qBAAqB,CAAC,CAACG,MAAM,GAAG,CAAC,GACjD;MAAEH,qBAAqB,EAAEjB,OAAO,CAACiB;IAAsB,CAAC,GACxD,CAAC,CAAC,CACP,CAAC;EACJ,CAAC,SAAS;IACR,MAAMJ,MAAM,CAACQ,KAAK,CAAC,CAAC;IACpB,MAAMT,MAAM,CAACS,KAAK,CAAC,CAAC;EACtB;AACF","ignoreList":[]}
|
|
@@ -33,6 +33,7 @@ export declare enum AzureSecretKeysEnum {
|
|
|
33
33
|
GITHUB_TOKEN = "GITHUB-TOKEN",
|
|
34
34
|
GITHUB_WORKFLOW_URL = "GITHUB-WORKFLOW-URL",
|
|
35
35
|
DB_CONNECTION_STRING_ENCRYPTION_KEY = "DB-CONNECTION-STRING-ENCRYPTION-KEY",
|
|
36
|
+
AGENTS_API_KEY = "AGENTS-API-KEY",
|
|
36
37
|
REDIS_HOST = "REDIS-HOST",
|
|
37
38
|
REDIS_KEY = "REDIS-KEY",
|
|
38
39
|
REDIS_URL = "REDIS-URL",
|
|
@@ -38,6 +38,7 @@ var AzureSecretKeysEnum;
|
|
|
38
38
|
AzureSecretKeysEnum["GITHUB_TOKEN"] = "GITHUB-TOKEN";
|
|
39
39
|
AzureSecretKeysEnum["GITHUB_WORKFLOW_URL"] = "GITHUB-WORKFLOW-URL";
|
|
40
40
|
AzureSecretKeysEnum["DB_CONNECTION_STRING_ENCRYPTION_KEY"] = "DB-CONNECTION-STRING-ENCRYPTION-KEY";
|
|
41
|
+
AzureSecretKeysEnum["AGENTS_API_KEY"] = "AGENTS-API-KEY";
|
|
41
42
|
AzureSecretKeysEnum["REDIS_HOST"] = "REDIS-HOST";
|
|
42
43
|
AzureSecretKeysEnum["REDIS_KEY"] = "REDIS-KEY";
|
|
43
44
|
AzureSecretKeysEnum["REDIS_URL"] = "REDIS-URL";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretKeys.enum.js","sourceRoot":"","sources":["../../../src/enums/secretKeys.enum.ts"],"names":[],"mappings":";;;AAAA,uBAAuB;AACvB,IAAY,
|
|
1
|
+
{"version":3,"file":"secretKeys.enum.js","sourceRoot":"","sources":["../../../src/enums/secretKeys.enum.ts"],"names":[],"mappings":";;;AAAA,uBAAuB;AACvB,IAAY,mBAyCX;AAzCD,WAAY,mBAAmB;IAC7B,oFAA6D,CAAA;IAC7D,4EAAqD,CAAA;IACrD,8DAAuC,CAAA;IACvC,8FAAuE,CAAA;IACvE,0FAAmE,CAAA;IACnE,sFAA+D,CAAA;IAC/D,8DAAuC,CAAA;IACvC,8EAAuD,CAAA;IACvD,8EAAuD,CAAA;IACvD,oFAA6D,CAAA;IAC7D,8EAAuD,CAAA;IACvD,oFAA6D,CAAA;IAC7D,oFAA8D,CAAA;IAC9D,oFAA6D,CAAA;IAC7D,gGAAyE,CAAA;IACzE,qFAA8D,CAAA;IAC9D,sGAA+E,CAAA;IAC/E,oGAA6E,CAAA;IAC7E,oGAA6E,CAAA;IAC7E,gGAAyE,CAAA;IACzE,8DAAuC,CAAA;IACvC,gHAAyF,CAAA;IACzF,8GAAuF,CAAA;IACvF,gGAAyE,CAAA;IACzE,2EAAkD,CAAA;IAClD,0EAAiD,CAAA;IACjD,wGAAiF,CAAA;IACjF,0FAAmE,CAAA;IACnE,wDAA+B,CAAA;IAC/B,kFAAyD,CAAA;IACzD,gDAAyB,CAAA;IACzB,oDAA6B,CAAA;IAC7B,kEAA2C,CAAA;IAC3C,kGAA2E,CAAA;IAC3E,wDAAiC,CAAA;IAEjC,gDAAuB,CAAA;IACvB,8CAAqB,CAAA;IACrB,8CAAuB,CAAA;IACvB,gDAAyB,CAAA;AAC3B,CAAC,EAzCW,mBAAmB,mCAAnB,mBAAmB,QAyC9B;AAED,kCAAkC;AAClC,8DAA8D;AAE9D,sBAAsB"}
|
package/build/src/index.d.ts
CHANGED
package/build/src/index.js
CHANGED
|
@@ -8,4 +8,5 @@ tslib_1.__exportStar(require("./utils/cache"), exports);
|
|
|
8
8
|
tslib_1.__exportStar(require("./middlewares"), exports);
|
|
9
9
|
tslib_1.__exportStar(require("./constants"), exports);
|
|
10
10
|
tslib_1.__exportStar(require("./repositories"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./service/internal-api"), exports);
|
|
11
12
|
//# sourceMappingURL=index.js.map
|
package/build/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,kDAAwB;AACxB,kDAAwB;AACxB,wDAA8B;AAC9B,wDAA8B;AAC9B,sDAA4B;AAC5B,yDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,kDAAwB;AACxB,kDAAwB;AACxB,wDAA8B;AAC9B,wDAA8B;AAC9B,sDAA4B;AAC5B,yDAA+B;AAC/B,iEAAuC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type InternalAuthHeaders = {
|
|
2
|
+
internalKey: string;
|
|
3
|
+
tenantId?: string;
|
|
4
|
+
businessId?: string;
|
|
5
|
+
appId?: string;
|
|
6
|
+
email?: string;
|
|
7
|
+
name?: string;
|
|
8
|
+
userId?: string;
|
|
9
|
+
};
|
|
10
|
+
export type GetUserByIdArgs = {
|
|
11
|
+
userId: string;
|
|
12
|
+
auth: InternalAuthHeaders;
|
|
13
|
+
baseUrl?: string;
|
|
14
|
+
};
|
|
15
|
+
export declare class InternalApiClient {
|
|
16
|
+
getUserById<T>(args: GetUserByIdArgs): Promise<T>;
|
|
17
|
+
}
|
|
18
|
+
export declare const internalApiClient: () => InternalApiClient;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.internalApiClient = exports.InternalApiClient = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const buildHeaders = (auth) => {
|
|
6
|
+
const headers = {
|
|
7
|
+
"x-internal-key": auth.internalKey,
|
|
8
|
+
};
|
|
9
|
+
if (auth.tenantId)
|
|
10
|
+
headers["x-tenant-id"] = auth.tenantId;
|
|
11
|
+
if (auth.businessId)
|
|
12
|
+
headers["x-business-id"] = auth.businessId;
|
|
13
|
+
if (auth.appId)
|
|
14
|
+
headers["x-app-id"] = auth.appId;
|
|
15
|
+
if (auth.email)
|
|
16
|
+
headers["x-email"] = auth.email;
|
|
17
|
+
if (auth.name)
|
|
18
|
+
headers["x-name"] = auth.name;
|
|
19
|
+
if (auth.userId)
|
|
20
|
+
headers["x-user-id"] = auth.userId;
|
|
21
|
+
return headers;
|
|
22
|
+
};
|
|
23
|
+
const normalizeBaseUrl = (baseUrl) => baseUrl.replace(/\/+$/, "");
|
|
24
|
+
const resolveApiBaseUrlFromEnv = () => {
|
|
25
|
+
const env = (process.env.APPLICATION_ENV || "").toLowerCase();
|
|
26
|
+
const baseFromEnv = env === "dev"
|
|
27
|
+
? "https://api.dev.culturefy.app"
|
|
28
|
+
: env === "stage" || env === "staging"
|
|
29
|
+
? "https://api.staging.culturefy.app"
|
|
30
|
+
: env === "prod" || env === "production"
|
|
31
|
+
? "https://api.culturefy.app"
|
|
32
|
+
: "";
|
|
33
|
+
if (!baseFromEnv) {
|
|
34
|
+
throw new Error("Missing SHARED_USER_SERVICE_URL, API_BASE_URL, or valid APPLICATION_ENV");
|
|
35
|
+
}
|
|
36
|
+
return baseFromEnv;
|
|
37
|
+
};
|
|
38
|
+
const getSharedUserBaseUrl = (override) => {
|
|
39
|
+
if (override)
|
|
40
|
+
return normalizeBaseUrl(override);
|
|
41
|
+
const direct = process.env.SHARED_USER_SERVICE_URL;
|
|
42
|
+
if (direct)
|
|
43
|
+
return normalizeBaseUrl(direct);
|
|
44
|
+
const apiBase = process.env.CULTUREFY_API_BASE_URL || process.env.API_BASE_URL;
|
|
45
|
+
if (apiBase) {
|
|
46
|
+
return `${normalizeBaseUrl(apiBase)}/shared-user`;
|
|
47
|
+
}
|
|
48
|
+
const baseFromEnv = resolveApiBaseUrlFromEnv();
|
|
49
|
+
return `${baseFromEnv}/shared-user`;
|
|
50
|
+
};
|
|
51
|
+
class InternalApiClient {
|
|
52
|
+
getUserById(args) {
|
|
53
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
const baseUrl = getSharedUserBaseUrl(args.baseUrl);
|
|
55
|
+
const url = `${baseUrl}/v1/interservices/user/${args.userId}`;
|
|
56
|
+
const res = yield fetch(url, {
|
|
57
|
+
method: "GET",
|
|
58
|
+
headers: buildHeaders(args.auth),
|
|
59
|
+
});
|
|
60
|
+
if (!res.ok) {
|
|
61
|
+
const text = yield res.text();
|
|
62
|
+
throw new Error(`internal-api error ${res.status}: ${text}`);
|
|
63
|
+
}
|
|
64
|
+
return (yield res.json());
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.InternalApiClient = InternalApiClient;
|
|
69
|
+
const internalApiClient = () => new InternalApiClient();
|
|
70
|
+
exports.internalApiClient = internalApiClient;
|
|
71
|
+
// const user = await client.getUserById({
|
|
72
|
+
// userId: "65f0b1c9e8c2a123456789ab",
|
|
73
|
+
// auth: {
|
|
74
|
+
// internalKey: "12345",
|
|
75
|
+
// tenantId: "69b47db5c2be5714989ca8ae",
|
|
76
|
+
// businessId: "69b47db5c2be5714989ca8ae",
|
|
77
|
+
// appId: "5x8jws1b",
|
|
78
|
+
// userId: "65f0b1c9e8c2a123456789ab",
|
|
79
|
+
// },
|
|
80
|
+
// });
|
|
81
|
+
//# sourceMappingURL=internal-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-api.js","sourceRoot":"","sources":["../../../src/service/internal-api.ts"],"names":[],"mappings":"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"}
|
package/build/src/utils/index.js
CHANGED
|
@@ -8,4 +8,5 @@ tslib_1.__exportStar(require("./mapper"), exports);
|
|
|
8
8
|
tslib_1.__exportStar(require("./jwt"), exports);
|
|
9
9
|
tslib_1.__exportStar(require("./middleware"), exports);
|
|
10
10
|
tslib_1.__exportStar(require("./cache"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./service-bus-queue"), exports);
|
|
11
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,qDAA2B;AAC3B,yDAA+B;AAC/B,mDAAyB;AACzB,gDAAsB;AACtB,uDAA6B;AAC7B,kDAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,qDAA2B;AAC3B,yDAA+B;AAC/B,mDAAyB;AACzB,gDAAsB;AACtB,uDAA6B;AAC7B,kDAAwB;AACxB,8DAAoC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type ServiceBusQueueApplicationProperties = Record<string, string | number | boolean | Date>;
|
|
2
|
+
export type SendServiceBusQueueMessageOptions = {
|
|
3
|
+
/**
|
|
4
|
+
* Defaults to `process.env.SERVICE_BUS_CONNECTION_STRING` when omitted.
|
|
5
|
+
*/
|
|
6
|
+
connectionString?: string;
|
|
7
|
+
applicationProperties?: ServiceBusQueueApplicationProperties;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Sends one message to an Azure Service Bus queue. Opens and closes the client per call.
|
|
11
|
+
* `payload` is JSON-stringified unless it is already a string (raw body).
|
|
12
|
+
*/
|
|
13
|
+
export declare function sendServiceBusQueueMessage(queueName: string, payload: unknown, options?: SendServiceBusQueueMessageOptions): Promise<void>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sendServiceBusQueueMessage = sendServiceBusQueueMessage;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const service_bus_1 = require("@azure/service-bus");
|
|
6
|
+
/**
|
|
7
|
+
* Sends one message to an Azure Service Bus queue. Opens and closes the client per call.
|
|
8
|
+
* `payload` is JSON-stringified unless it is already a string (raw body).
|
|
9
|
+
*/
|
|
10
|
+
function sendServiceBusQueueMessage(queueName, payload, options) {
|
|
11
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
12
|
+
var _a, _b;
|
|
13
|
+
const connectionString = ((_a = options === null || options === void 0 ? void 0 : options.connectionString) === null || _a === void 0 ? void 0 : _a.trim()) ||
|
|
14
|
+
((_b = process.env.SERVICE_BUS_CONNECTION_STRING) === null || _b === void 0 ? void 0 : _b.trim());
|
|
15
|
+
if (!connectionString) {
|
|
16
|
+
throw new Error("Service Bus connection string missing: pass options.connectionString or set SERVICE_BUS_CONNECTION_STRING");
|
|
17
|
+
}
|
|
18
|
+
const body = typeof payload === "string" ? payload : JSON.stringify(payload);
|
|
19
|
+
const client = new service_bus_1.ServiceBusClient(connectionString);
|
|
20
|
+
const sender = client.createSender(queueName);
|
|
21
|
+
try {
|
|
22
|
+
yield sender.sendMessages(Object.assign({ body }, ((options === null || options === void 0 ? void 0 : options.applicationProperties) != null &&
|
|
23
|
+
Object.keys(options.applicationProperties).length > 0
|
|
24
|
+
? { applicationProperties: options.applicationProperties }
|
|
25
|
+
: {})));
|
|
26
|
+
}
|
|
27
|
+
finally {
|
|
28
|
+
yield sender.close();
|
|
29
|
+
yield client.close();
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=service-bus-queue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-bus-queue.js","sourceRoot":"","sources":["../../../src/utils/service-bus-queue.ts"],"names":[],"mappings":";;AAmBA,gEA+BC;;AAlDD,oDAAsD;AAetD;;;GAGG;AACH,SAAsB,0BAA0B,CAC9C,SAAiB,EACjB,OAAgB,EAChB,OAA2C;;;QAE3C,MAAM,gBAAgB,GACpB,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,0CAAE,IAAI,EAAE;aACjC,MAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,0CAAE,IAAI,EAAE,CAAA,CAAC;QACpD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,2GAA2G,CAC5G,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GACR,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAElE,MAAM,MAAM,GAAG,IAAI,8BAAgB,CAAC,gBAAgB,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,YAAY,iBACvB,IAAI,IACD,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,qBAAqB,KAAI,IAAI;gBAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,MAAM,GAAG,CAAC;gBACnD,CAAC,CAAC,EAAE,qBAAqB,EAAE,OAAO,CAAC,qBAAqB,EAAE;gBAC1D,CAAC,CAAC,EAAE,CAAC,EACP,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@culturefy/shared",
|
|
3
3
|
"description": "Shared utilities for culturefy serverless services",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.74",
|
|
5
5
|
"main": "build/cjs/index.js",
|
|
6
6
|
"module": "build/esm/index.js",
|
|
7
7
|
"types": "build/src/index.d.ts",
|
|
@@ -56,6 +56,7 @@
|
|
|
56
56
|
"@azure/functions": "^4.7.2-preview",
|
|
57
57
|
"@azure/identity": "^4.13.0",
|
|
58
58
|
"@azure/keyvault-secrets": "^4.10.0",
|
|
59
|
+
"@azure/service-bus": "^7.9.5",
|
|
59
60
|
"@types/mongoose": "^5.11.96",
|
|
60
61
|
"ioredis": "^5.5.0",
|
|
61
62
|
"express": "^4.18.2",
|