@mmhr/utils
Version:
MMH utility service.
118 lines (114 loc) • 3.72 kB
JavaScript
;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/index.ts
var index_exports = {};
__export(index_exports, {
getTenant: () => getTenant,
getTenantInfoApiUrl: () => getTenantInfoApiUrl,
getVerifyReAnnotationTokenApiUrl: () => getVerifyReAnnotationTokenApiUrl
});
module.exports = __toCommonJS(index_exports);
// src/constants/constants.ts
var TENANT = Object.freeze({
UNKNOWN: "unknown",
LOCALHOST: "localhost",
DEV: "dev",
STG: "stg",
UAT: "uat",
CT: "ct",
ATHELETE: "athlete",
SPINE_ALIGN: "apinealign",
PRODUCTION: "vatb"
});
var CONTROLLER = Object.freeze({
BASE_CONTROLLER: "base",
ROM_EXERCISE_API: "RomExerciseApi",
ROM_CONTROLLER: "rom",
WEB_RTC_CONTROLLER: "webrtc"
});
var VALID_DOMAINS = Object.freeze([
"mypainlog.ai",
"injurycloud.com"
]);
var MODULES_URL = Object.freeze({
productionApiPortalUrl: "https://api.injurycloud.com",
ctApiPortalUrl: "https://ctapi.injurycloud.com",
uatApiPortalUrl: "https://uatapi.injurycloud.com",
stgApiPortalUrl: "https://stgapi.injurycloud.com",
devApiPortalUrl: "https://devapi.injurycloud.com"
});
var EXERCISE_STATUS = Object.freeze({
COMPLETED: { name: "Completed", key: "completed" },
RETAKE_HUMAN_EXPERT: { name: "Human-expert", key: "human-expert" }
});
var CONSTANTS = {
TENANT,
CONTROLLER,
VALID_DOMAINS,
MODULES_URL,
EXERCISE_STATUS
};
var constants_default = CONSTANTS;
// src/index.ts
var { TENANT: TENANT2, MODULES_URL: MODULES_URL2, VALID_DOMAINS: VALID_DOMAINS2, CONTROLLER: CONTROLLER2 } = constants_default;
var baseUrlMap = {
[TENANT2.LOCALHOST]: MODULES_URL2?.devApiPortalUrl,
[TENANT2.DEV]: MODULES_URL2?.devApiPortalUrl,
[TENANT2.STG]: MODULES_URL2?.stgApiPortalUrl,
[TENANT2.UAT]: MODULES_URL2?.uatApiPortalUrl,
[TENANT2.CT]: MODULES_URL2?.ctApiPortalUrl,
[TENANT2.PRODUCTION]: MODULES_URL2?.productionApiPortalUrl
};
var getTenant = (url = "") => {
try {
if (!url) return "";
const { hostname } = new URL(url);
if (hostname === TENANT2.LOCALHOST) {
return TENANT2.DEV;
}
const matchesValidDomain = VALID_DOMAINS2.some(
(domain) => hostname.endsWith(domain)
);
if (matchesValidDomain) {
const parts = hostname.split(".");
if (parts.length >= 3) {
return parts[0];
}
}
return "";
} catch {
return "";
}
};
var getVerifyReAnnotationTokenApiUrl = (tenant) => {
const baseUrl = baseUrlMap[tenant] || baseUrlMap[TENANT2.PRODUCTION];
const controller = CONTROLLER2?.WEB_RTC_CONTROLLER;
return `${baseUrl}/api/${controller}/VerifyReannotationToken`;
};
var getTenantInfoApiUrl = (tenant) => {
const baseUrl = baseUrlMap[tenant] || baseUrlMap[TENANT2.PRODUCTION];
const controller = CONTROLLER2?.BASE_CONTROLLER;
return `${baseUrl}/api/${controller}/TenantInfo/`;
};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
getTenant,
getTenantInfoApiUrl,
getVerifyReAnnotationTokenApiUrl
});