mftsccs-browser 3.0.4-beta → 3.0.5-beta

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.
@@ -1084,7 +1084,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
1084
1084
  \******************************************/
1085
1085
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1086
1086
 
1087
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Logger: () => (/* binding */ Logger),\n/* harmony export */ getCookie: () => (/* binding */ getCookie)\n/* harmony export */ });\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../app */ \"./src/app.ts\");\n/* harmony import */ var _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../DataStructures/Security/TokenStorage */ \"./src/DataStructures/Security/TokenStorage.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar _a;\n\n\nclass Logger {\n /**\n * Automatically starts the auto-sync mechanism.\n * This is private and does not need external interaction.\n */\n static startAutoSync() {\n if (this.autoSyncInterval) {\n console.warn(\"Auto-sync is already running.\");\n return;\n }\n this.nextSyncTime = Date.now() + this.SYNC_INTERVAL_MS;\n setInterval(() => {\n const currentTime = Date.now();\n // console.log(\"Current Time : \",currentTime);\n if (this.nextSyncTime && currentTime >= this.nextSyncTime) {\n // console.log(\"Time to sync log.\")\n this.nextSyncTime = currentTime + this.SYNC_INTERVAL_MS;\n this.sendPackageLogsToServer();\n this.sendApplicationLogsToServer();\n }\n }, 60000); // Check every minute\n }\n /**\n * Automatically stops the auto-sync mechanism when required.\n */\n static stopAutoSync() {\n if (this.autoSyncInterval !== null) {\n clearInterval(this.autoSyncInterval);\n this.autoSyncInterval = null;\n this.nextSyncTime = null;\n }\n }\n /**\n * Set the log level (e.g., \"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\").\n */\n static setLogLevel(level) {\n this.logLevel = level;\n }\n /**\n * Determines whether the current log level permits the given level to be logged.\n */\n static shouldLog(level) {\n return this.LOG_LEVELS.indexOf(level) >= this.LOG_LEVELS.indexOf(this.logLevel);\n }\n /**\n * Logs a message with optional additional structured data.\n */\n static formatLogData(level, message, data) {\n if (!this.shouldLog(level))\n return;\n const logEntry = Object.assign({ timestamp: new Date().toLocaleString(), level,\n message }, data);\n this.packageLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.mftsccsBrowser, logEntry)\n // console.log(\"Package Log Updated : \", this.packageLogsData);\n }\n static log(level, message, data) {\n if (!this.logPackageActivationStatus)\n return;\n try {\n this.formatLogData(level, message, data || null);\n }\n catch (error) {\n console.error(\"Error on Logger Log : \", error);\n }\n }\n static logfunction(myfunction, ...args) {\n // if(this.logPackageActivationStatus){\n let myarguments = args;\n //let size = Object.values(myarguments[0]).length;\n // console.log(\"info\", myfunction.name, myarguments, myarguments[0].length);\n let logData = {\n functionName: myfunction.name,\n functionParameters: myarguments\n };\n this.formatLogData('INFO', \"function called\", logData);\n // }\n }\n static logInfo(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.log(\"INFO\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logInfo\");\n }\n }\n static logError(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"ERROR\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logError\");\n }\n }\n static logWarning(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"WARNING\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logWarning\");\n }\n }\n static logDebug(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"DEBUG\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logDebug\");\n }\n }\n // Log Application Activity\n static logApplication(type, message, data) {\n console.log(\"LogApplicationActivationStatus : \", this.logApplicationActivationStatus);\n if (!this.logApplicationActivationStatus)\n return;\n try {\n const timestamp = new Date().toLocaleString();\n const logEntry = {\n timestamp: timestamp,\n type: type,\n message: message,\n data: data || null,\n };\n this.applicationLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.appLogs, logEntry)\n // console.log(\"Application Log Updated : \", this.applicationLogsData);\n }\n catch (error) {\n console.error(\"Failed to log application activity:\", error);\n }\n }\n /**\n * Helper method to send logs to the server.\n */\n static sendApplicationLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendApplicationLogsToServer : \", this.applicationLogsData);\n if (this.applicationLogsData.length === 0) {\n return;\n }\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.applicationLogsData;\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.appLogs,\n logData: chunk\n })\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send app-logs:-\", response.status, response.statusText, responseBody);\n }\n }\n // clear application log from memory\n this.applicationLogsData = [];\n }\n catch (error) {\n console.error(\"Network error while sending logs:\", error);\n }\n });\n }\n static sendPackageLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendPackageLogsToServer : \", this.packageLogsData);\n if (this.packageLogsData.length === 0)\n return;\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.packageLogsData;\n console.log(\"this is the logs to server\", this.packageLogsData);\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.mftsccsBrowser,\n logData: chunk\n }),\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send logs:-\", response.status, response.statusText, responseBody);\n return;\n }\n }\n // clear mftsccs log from memory\n this.packageLogsData = [];\n }\n catch (error) {\n console.error(\"Error while sending logs to server:\", error);\n }\n });\n }\n /**\n * Helper method to save logs to localStorage.\n */\n static saveLogToLocalStorage(logType, logMessage) {\n try {\n if (typeof localStorage === undefined) {\n console.warn(\"Local Storage type undefined\");\n return;\n }\n else {\n const logs = JSON.parse((localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(logType)) || \"[]\");\n logs.push(logMessage);\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem(logType, JSON.stringify(logs));\n }\n }\n catch (error) {\n console.error(\"Error on saving log in localstorage\");\n this.log(\"ERROR\", \"Error while saving log in local storage\");\n }\n }\n static clearLogsFromLocalStorage(logType) {\n if (typeof localStorage === undefined) {\n console.warn('localStorage is not available');\n return;\n }\n else {\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.removeItem(logType);\n // console.log('Logs removed from localStorage');\n }\n }\n}\n_a = Logger;\nLogger.logLevel = \"INFO\";\nLogger.packageLogsData = [];\nLogger.applicationLogsData = [];\nLogger.LOG_LEVELS = [\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"];\nLogger.SYNC_INTERVAL_MS = 120 * 1000; // 120 Sec\nLogger.nextSyncTime = null;\nLogger.appLogs = \"app\";\nLogger.mftsccsBrowser = \"mftsccs\";\nLogger.logApplicationActivationStatus = false;\nLogger.logPackageActivationStatus = false;\n// Private auto-sync interval management\nLogger.autoSyncInterval = null;\n// Ensure logs are managed automatically\n(() => {\n _a.startAutoSync();\n})();\n/**\n *\n * @param cname The name of the cookie\n * @returns Cookie value\n */\nfunction getCookie(cname) {\n try {\n let name = cname + \"=\";\n let decodedCookie = decodeURIComponent(document.cookie);\n let ca = decodedCookie.split(';');\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n }\n catch (error) {\n console.error(\"Error on getcookie\");\n return \"\";\n }\n}\n\n\n//# sourceURL=webpack://mftsccs-browser/./src/Middleware/logger.service.ts?");
1087
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Logger: () => (/* binding */ Logger),\n/* harmony export */ getCookie: () => (/* binding */ getCookie)\n/* harmony export */ });\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../app */ \"./src/app.ts\");\n/* harmony import */ var _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../DataStructures/Security/TokenStorage */ \"./src/DataStructures/Security/TokenStorage.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar _a;\n\n\nclass Logger {\n /**\n * Automatically starts the auto-sync mechanism.\n * This is private and does not need external interaction.\n */\n static startAutoSync() {\n if (this.autoSyncInterval) {\n console.warn(\"Auto-sync is already running.\");\n return;\n }\n this.nextSyncTime = Date.now() + this.SYNC_INTERVAL_MS;\n setInterval(() => {\n const currentTime = Date.now();\n // console.log(\"Current Time : \",currentTime);\n if (this.nextSyncTime && currentTime >= this.nextSyncTime) {\n // console.log(\"Time to sync log.\")\n this.nextSyncTime = currentTime + this.SYNC_INTERVAL_MS;\n this.sendPackageLogsToServer();\n this.sendApplicationLogsToServer();\n }\n }, 10000); // Check every minute\n }\n /**\n * Automatically stops the auto-sync mechanism when required.\n */\n static stopAutoSync() {\n if (this.autoSyncInterval !== null) {\n clearInterval(this.autoSyncInterval);\n this.autoSyncInterval = null;\n this.nextSyncTime = null;\n }\n }\n /**\n * Set the log level (e.g., \"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\").\n */\n static setLogLevel(level) {\n this.logLevel = level;\n }\n /**\n * Determines whether the current log level permits the given level to be logged.\n */\n static shouldLog(level) {\n return this.LOG_LEVELS.indexOf(level) >= this.LOG_LEVELS.indexOf(this.logLevel);\n }\n /**\n * Logs a message with optional additional structured data.\n */\n static formatLogData(level, message, data) {\n if (!this.shouldLog(level))\n return;\n const logEntry = Object.assign({ timestamp: new Date().toLocaleString(), level,\n message }, data);\n this.packageLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.mftsccsBrowser, logEntry)\n // console.log(\"Package Log Updated : \", this.packageLogsData);\n }\n static log(level, message, data) {\n if (!this.logPackageActivationStatus)\n return;\n try {\n this.formatLogData(level, message, data || null);\n }\n catch (error) {\n console.error(\"Error on Logger Log : \", error);\n }\n }\n static logfunction(myfunction, ...args) {\n // if(this.logPackageActivationStatus){\n let myarguments = args;\n //let size = Object.values(myarguments[0]).length;\n // console.log(\"info\", myfunction.name, myarguments, myarguments[0].length);\n let logData = {\n functionName: myfunction.name,\n functionParameters: myarguments\n };\n this.formatLogData('INFO', \"function called\", logData);\n // }\n }\n static logInfo(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.log(\"INFO\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logInfo\");\n }\n }\n static logError(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"ERROR\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logError\");\n }\n }\n static logWarning(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"WARNING\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logWarning\");\n }\n }\n static logDebug(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"DEBUG\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logDebug\");\n }\n }\n // Log Application Activity\n static logApplication(type, message, data) {\n console.log(\"LogApplicationActivationStatus : \", this.logApplicationActivationStatus);\n if (!this.logApplicationActivationStatus)\n return;\n try {\n const timestamp = new Date().toLocaleString();\n const logEntry = {\n timestamp: timestamp,\n type: type,\n message: message,\n data: data || null,\n };\n this.applicationLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.appLogs, logEntry)\n // console.log(\"Application Log Updated : \", this.applicationLogsData);\n }\n catch (error) {\n console.error(\"Failed to log application activity:\", error);\n }\n }\n /**\n * Helper method to send logs to the server.\n */\n static sendApplicationLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendApplicationLogsToServer : \", this.applicationLogsData);\n if (this.applicationLogsData.length === 0) {\n return;\n }\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.applicationLogsData;\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.appLogs,\n logData: chunk\n })\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send app-logs:-\", response.status, response.statusText, responseBody);\n }\n }\n // clear application log from memory\n this.applicationLogsData = [];\n }\n catch (error) {\n console.error(\"Network error while sending logs:\", error);\n }\n });\n }\n static sendPackageLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendPackageLogsToServer : \", this.packageLogsData);\n if (this.packageLogsData.length === 0)\n return;\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.packageLogsData;\n console.log(\"this is the logs to server\", this.packageLogsData);\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.mftsccsBrowser,\n logData: chunk\n }),\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send logs:-\", response.status, response.statusText, responseBody);\n return;\n }\n }\n // clear mftsccs log from memory\n this.packageLogsData = [];\n }\n catch (error) {\n console.error(\"Error while sending logs to server:\", error);\n }\n });\n }\n /**\n * Helper method to save logs to localStorage.\n */\n static saveLogToLocalStorage(logType, logMessage) {\n try {\n if (typeof localStorage === undefined) {\n console.warn(\"Local Storage type undefined\");\n return;\n }\n else {\n const logs = JSON.parse((localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(logType)) || \"[]\");\n logs.push(logMessage);\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem(logType, JSON.stringify(logs));\n }\n }\n catch (error) {\n console.error(\"Error on saving log in localstorage\");\n this.log(\"ERROR\", \"Error while saving log in local storage\");\n }\n }\n static clearLogsFromLocalStorage(logType) {\n if (typeof localStorage === undefined) {\n console.warn('localStorage is not available');\n return;\n }\n else {\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.removeItem(logType);\n // console.log('Logs removed from localStorage');\n }\n }\n}\n_a = Logger;\nLogger.logLevel = \"INFO\";\nLogger.packageLogsData = [];\nLogger.applicationLogsData = [];\nLogger.LOG_LEVELS = [\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"];\nLogger.SYNC_INTERVAL_MS = 12 * 1000; // 120 Sec\nLogger.nextSyncTime = null;\nLogger.appLogs = \"app\";\nLogger.mftsccsBrowser = \"mftsccs\";\nLogger.logApplicationActivationStatus = false;\nLogger.logPackageActivationStatus = false;\n// Private auto-sync interval management\nLogger.autoSyncInterval = null;\n// Ensure logs are managed automatically\n(() => {\n _a.startAutoSync();\n})();\n/**\n *\n * @param cname The name of the cookie\n * @returns Cookie value\n */\nfunction getCookie(cname) {\n try {\n let name = cname + \"=\";\n let decodedCookie = decodeURIComponent(document.cookie);\n let ca = decodedCookie.split(';');\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n }\n catch (error) {\n console.error(\"Error on getcookie\");\n return \"\";\n }\n}\n\n\n//# sourceURL=webpack://mftsccs-browser/./src/Middleware/logger.service.ts?");
1088
1088
 
1089
1089
  /***/ }),
1090
1090
 
@@ -1084,7 +1084,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
1084
1084
  \******************************************/
1085
1085
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1086
1086
 
1087
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Logger: () => (/* binding */ Logger),\n/* harmony export */ getCookie: () => (/* binding */ getCookie)\n/* harmony export */ });\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../app */ \"./src/app.ts\");\n/* harmony import */ var _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../DataStructures/Security/TokenStorage */ \"./src/DataStructures/Security/TokenStorage.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar _a;\n\n\nclass Logger {\n /**\n * Automatically starts the auto-sync mechanism.\n * This is private and does not need external interaction.\n */\n static startAutoSync() {\n if (this.autoSyncInterval) {\n console.warn(\"Auto-sync is already running.\");\n return;\n }\n this.nextSyncTime = Date.now() + this.SYNC_INTERVAL_MS;\n setInterval(() => {\n const currentTime = Date.now();\n // console.log(\"Current Time : \",currentTime);\n if (this.nextSyncTime && currentTime >= this.nextSyncTime) {\n // console.log(\"Time to sync log.\")\n this.nextSyncTime = currentTime + this.SYNC_INTERVAL_MS;\n this.sendPackageLogsToServer();\n this.sendApplicationLogsToServer();\n }\n }, 60000); // Check every minute\n }\n /**\n * Automatically stops the auto-sync mechanism when required.\n */\n static stopAutoSync() {\n if (this.autoSyncInterval !== null) {\n clearInterval(this.autoSyncInterval);\n this.autoSyncInterval = null;\n this.nextSyncTime = null;\n }\n }\n /**\n * Set the log level (e.g., \"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\").\n */\n static setLogLevel(level) {\n this.logLevel = level;\n }\n /**\n * Determines whether the current log level permits the given level to be logged.\n */\n static shouldLog(level) {\n return this.LOG_LEVELS.indexOf(level) >= this.LOG_LEVELS.indexOf(this.logLevel);\n }\n /**\n * Logs a message with optional additional structured data.\n */\n static formatLogData(level, message, data) {\n if (!this.shouldLog(level))\n return;\n const logEntry = Object.assign({ timestamp: new Date().toLocaleString(), level,\n message }, data);\n this.packageLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.mftsccsBrowser, logEntry)\n // console.log(\"Package Log Updated : \", this.packageLogsData);\n }\n static log(level, message, data) {\n if (!this.logPackageActivationStatus)\n return;\n try {\n this.formatLogData(level, message, data || null);\n }\n catch (error) {\n console.error(\"Error on Logger Log : \", error);\n }\n }\n static logfunction(myfunction, ...args) {\n // if(this.logPackageActivationStatus){\n let myarguments = args;\n //let size = Object.values(myarguments[0]).length;\n // console.log(\"info\", myfunction.name, myarguments, myarguments[0].length);\n let logData = {\n functionName: myfunction.name,\n functionParameters: myarguments\n };\n this.formatLogData('INFO', \"function called\", logData);\n // }\n }\n static logInfo(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.log(\"INFO\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logInfo\");\n }\n }\n static logError(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"ERROR\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logError\");\n }\n }\n static logWarning(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"WARNING\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logWarning\");\n }\n }\n static logDebug(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"DEBUG\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logDebug\");\n }\n }\n // Log Application Activity\n static logApplication(type, message, data) {\n console.log(\"LogApplicationActivationStatus : \", this.logApplicationActivationStatus);\n if (!this.logApplicationActivationStatus)\n return;\n try {\n const timestamp = new Date().toLocaleString();\n const logEntry = {\n timestamp: timestamp,\n type: type,\n message: message,\n data: data || null,\n };\n this.applicationLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.appLogs, logEntry)\n // console.log(\"Application Log Updated : \", this.applicationLogsData);\n }\n catch (error) {\n console.error(\"Failed to log application activity:\", error);\n }\n }\n /**\n * Helper method to send logs to the server.\n */\n static sendApplicationLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendApplicationLogsToServer : \", this.applicationLogsData);\n if (this.applicationLogsData.length === 0) {\n return;\n }\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.applicationLogsData;\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.appLogs,\n logData: chunk\n })\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send app-logs:-\", response.status, response.statusText, responseBody);\n }\n }\n // clear application log from memory\n this.applicationLogsData = [];\n }\n catch (error) {\n console.error(\"Network error while sending logs:\", error);\n }\n });\n }\n static sendPackageLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendPackageLogsToServer : \", this.packageLogsData);\n if (this.packageLogsData.length === 0)\n return;\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.packageLogsData;\n console.log(\"this is the logs to server\", this.packageLogsData);\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.mftsccsBrowser,\n logData: chunk\n }),\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send logs:-\", response.status, response.statusText, responseBody);\n return;\n }\n }\n // clear mftsccs log from memory\n this.packageLogsData = [];\n }\n catch (error) {\n console.error(\"Error while sending logs to server:\", error);\n }\n });\n }\n /**\n * Helper method to save logs to localStorage.\n */\n static saveLogToLocalStorage(logType, logMessage) {\n try {\n if (typeof localStorage === undefined) {\n console.warn(\"Local Storage type undefined\");\n return;\n }\n else {\n const logs = JSON.parse((localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(logType)) || \"[]\");\n logs.push(logMessage);\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem(logType, JSON.stringify(logs));\n }\n }\n catch (error) {\n console.error(\"Error on saving log in localstorage\");\n this.log(\"ERROR\", \"Error while saving log in local storage\");\n }\n }\n static clearLogsFromLocalStorage(logType) {\n if (typeof localStorage === undefined) {\n console.warn('localStorage is not available');\n return;\n }\n else {\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.removeItem(logType);\n // console.log('Logs removed from localStorage');\n }\n }\n}\n_a = Logger;\nLogger.logLevel = \"INFO\";\nLogger.packageLogsData = [];\nLogger.applicationLogsData = [];\nLogger.LOG_LEVELS = [\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"];\nLogger.SYNC_INTERVAL_MS = 120 * 1000; // 120 Sec\nLogger.nextSyncTime = null;\nLogger.appLogs = \"app\";\nLogger.mftsccsBrowser = \"mftsccs\";\nLogger.logApplicationActivationStatus = false;\nLogger.logPackageActivationStatus = false;\n// Private auto-sync interval management\nLogger.autoSyncInterval = null;\n// Ensure logs are managed automatically\n(() => {\n _a.startAutoSync();\n})();\n/**\n *\n * @param cname The name of the cookie\n * @returns Cookie value\n */\nfunction getCookie(cname) {\n try {\n let name = cname + \"=\";\n let decodedCookie = decodeURIComponent(document.cookie);\n let ca = decodedCookie.split(';');\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n }\n catch (error) {\n console.error(\"Error on getcookie\");\n return \"\";\n }\n}\n\n\n//# sourceURL=webpack://mftsccs-browser/./src/Middleware/logger.service.ts?");
1087
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Logger: () => (/* binding */ Logger),\n/* harmony export */ getCookie: () => (/* binding */ getCookie)\n/* harmony export */ });\n/* harmony import */ var _app__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../app */ \"./src/app.ts\");\n/* harmony import */ var _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../DataStructures/Security/TokenStorage */ \"./src/DataStructures/Security/TokenStorage.ts\");\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar _a;\n\n\nclass Logger {\n /**\n * Automatically starts the auto-sync mechanism.\n * This is private and does not need external interaction.\n */\n static startAutoSync() {\n if (this.autoSyncInterval) {\n console.warn(\"Auto-sync is already running.\");\n return;\n }\n this.nextSyncTime = Date.now() + this.SYNC_INTERVAL_MS;\n setInterval(() => {\n const currentTime = Date.now();\n // console.log(\"Current Time : \",currentTime);\n if (this.nextSyncTime && currentTime >= this.nextSyncTime) {\n // console.log(\"Time to sync log.\")\n this.nextSyncTime = currentTime + this.SYNC_INTERVAL_MS;\n this.sendPackageLogsToServer();\n this.sendApplicationLogsToServer();\n }\n }, 10000); // Check every minute\n }\n /**\n * Automatically stops the auto-sync mechanism when required.\n */\n static stopAutoSync() {\n if (this.autoSyncInterval !== null) {\n clearInterval(this.autoSyncInterval);\n this.autoSyncInterval = null;\n this.nextSyncTime = null;\n }\n }\n /**\n * Set the log level (e.g., \"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\").\n */\n static setLogLevel(level) {\n this.logLevel = level;\n }\n /**\n * Determines whether the current log level permits the given level to be logged.\n */\n static shouldLog(level) {\n return this.LOG_LEVELS.indexOf(level) >= this.LOG_LEVELS.indexOf(this.logLevel);\n }\n /**\n * Logs a message with optional additional structured data.\n */\n static formatLogData(level, message, data) {\n if (!this.shouldLog(level))\n return;\n const logEntry = Object.assign({ timestamp: new Date().toLocaleString(), level,\n message }, data);\n this.packageLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.mftsccsBrowser, logEntry)\n // console.log(\"Package Log Updated : \", this.packageLogsData);\n }\n static log(level, message, data) {\n if (!this.logPackageActivationStatus)\n return;\n try {\n this.formatLogData(level, message, data || null);\n }\n catch (error) {\n console.error(\"Error on Logger Log : \", error);\n }\n }\n static logfunction(myfunction, ...args) {\n // if(this.logPackageActivationStatus){\n let myarguments = args;\n //let size = Object.values(myarguments[0]).length;\n // console.log(\"info\", myfunction.name, myarguments, myarguments[0].length);\n let logData = {\n functionName: myfunction.name,\n functionParameters: myarguments\n };\n this.formatLogData('INFO', \"function called\", logData);\n // }\n }\n static logInfo(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.log(\"INFO\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logInfo\");\n }\n }\n static logError(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"ERROR\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logError\");\n }\n }\n static logWarning(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"WARNING\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logWarning\");\n }\n }\n static logDebug(startTime, userId, operationType, requestFrom, requestIP, responseStatus, responseData, functionName, functionParameters, userAgent, conceptsUsed) {\n try {\n const sessionId = getCookie(\"SessionId\");\n const responseTime = `${(performance.now() - startTime).toFixed(3)}ms`;\n const responseSize = responseData ? `${JSON.stringify(responseData).length}` : \"0\";\n const logData = {\n userId,\n operationType,\n requestFrom,\n requestIP,\n responseStatus,\n responseTime,\n responseSize,\n sessionId: sessionId === null || sessionId === void 0 ? void 0 : sessionId.toString(),\n functionName,\n functionParameters,\n userAgent,\n conceptsUsed,\n };\n this.formatLogData(\"DEBUG\", `Information logged for ${functionName}`, logData);\n }\n catch (error) {\n console.error(\"Error on logDebug\");\n }\n }\n // Log Application Activity\n static logApplication(type, message, data) {\n console.log(\"LogApplicationActivationStatus : \", this.logApplicationActivationStatus);\n if (!this.logApplicationActivationStatus)\n return;\n try {\n const timestamp = new Date().toLocaleString();\n const logEntry = {\n timestamp: timestamp,\n type: type,\n message: message,\n data: data || null,\n };\n this.applicationLogsData.push(logEntry);\n // this.saveLogToLocalStorage(this.appLogs, logEntry)\n // console.log(\"Application Log Updated : \", this.applicationLogsData);\n }\n catch (error) {\n console.error(\"Failed to log application activity:\", error);\n }\n }\n /**\n * Helper method to send logs to the server.\n */\n static sendApplicationLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendApplicationLogsToServer : \", this.applicationLogsData);\n if (this.applicationLogsData.length === 0) {\n return;\n }\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.applicationLogsData;\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.appLogs,\n logData: chunk\n })\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send app-logs:-\", response.status, response.statusText, responseBody);\n }\n }\n // clear application log from memory\n this.applicationLogsData = [];\n }\n catch (error) {\n console.error(\"Network error while sending logs:\", error);\n }\n });\n }\n static sendPackageLogsToServer() {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n console.log(\"Log from sendPackageLogsToServer : \", this.packageLogsData);\n if (this.packageLogsData.length === 0)\n return;\n const accessToken = _DataStructures_Security_TokenStorage__WEBPACK_IMPORTED_MODULE_1__.TokenStorage.BearerAccessToken;\n if (!accessToken)\n return;\n const storedLogs = this.packageLogsData;\n console.log(\"this is the logs to server\", this.packageLogsData);\n const chunkSize = 50;\n for (let i = 0; i < storedLogs.length; i += chunkSize) {\n const chunk = storedLogs.slice(i, i + chunkSize);\n const response = yield fetch(_app__WEBPACK_IMPORTED_MODULE_0__.BaseUrl.PostLogger(), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${accessToken}`\n },\n body: JSON.stringify({\n logType: this.mftsccsBrowser,\n logData: chunk\n }),\n });\n if (!response.ok) {\n const responseBody = yield response.text();\n console.error(\"Failed to send logs:-\", response.status, response.statusText, responseBody);\n return;\n }\n }\n // clear mftsccs log from memory\n this.packageLogsData = [];\n }\n catch (error) {\n console.error(\"Error while sending logs to server:\", error);\n }\n });\n }\n /**\n * Helper method to save logs to localStorage.\n */\n static saveLogToLocalStorage(logType, logMessage) {\n try {\n if (typeof localStorage === undefined) {\n console.warn(\"Local Storage type undefined\");\n return;\n }\n else {\n const logs = JSON.parse((localStorage === null || localStorage === void 0 ? void 0 : localStorage.getItem(logType)) || \"[]\");\n logs.push(logMessage);\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.setItem(logType, JSON.stringify(logs));\n }\n }\n catch (error) {\n console.error(\"Error on saving log in localstorage\");\n this.log(\"ERROR\", \"Error while saving log in local storage\");\n }\n }\n static clearLogsFromLocalStorage(logType) {\n if (typeof localStorage === undefined) {\n console.warn('localStorage is not available');\n return;\n }\n else {\n localStorage === null || localStorage === void 0 ? void 0 : localStorage.removeItem(logType);\n // console.log('Logs removed from localStorage');\n }\n }\n}\n_a = Logger;\nLogger.logLevel = \"INFO\";\nLogger.packageLogsData = [];\nLogger.applicationLogsData = [];\nLogger.LOG_LEVELS = [\"DEBUG\", \"INFO\", \"WARNING\", \"ERROR\"];\nLogger.SYNC_INTERVAL_MS = 12 * 1000; // 120 Sec\nLogger.nextSyncTime = null;\nLogger.appLogs = \"app\";\nLogger.mftsccsBrowser = \"mftsccs\";\nLogger.logApplicationActivationStatus = false;\nLogger.logPackageActivationStatus = false;\n// Private auto-sync interval management\nLogger.autoSyncInterval = null;\n// Ensure logs are managed automatically\n(() => {\n _a.startAutoSync();\n})();\n/**\n *\n * @param cname The name of the cookie\n * @returns Cookie value\n */\nfunction getCookie(cname) {\n try {\n let name = cname + \"=\";\n let decodedCookie = decodeURIComponent(document.cookie);\n let ca = decodedCookie.split(';');\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n }\n catch (error) {\n console.error(\"Error on getcookie\");\n return \"\";\n }\n}\n\n\n//# sourceURL=webpack://mftsccs-browser/./src/Middleware/logger.service.ts?");
1088
1088
 
1089
1089
  /***/ }),
1090
1090
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mftsccs-browser",
3
- "version": "3.0.4-beta",
3
+ "version": "3.0.5-beta",
4
4
  "environment": "production",
5
5
  "description": "Full Pack of concept and connection system",
6
6
  "main": "dist/main.bundle.js",