3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-10 12:25:02 +00:00
zeppelin/backend/src/utils/parseCustomId.ts
2024-04-09 20:57:18 +03:00

30 lines
638 B
TypeScript

import { logger } from "../logger.js";
const customIdFormat = /^([^:]+):\d+:(.*)$/;
export function parseCustomId(customId: string): { namespace: string; data: any } {
const parts = customId.match(customIdFormat);
if (!parts) {
return {
namespace: "",
data: null,
};
}
let parsedData: any;
try {
parsedData = JSON.parse(parts[2]);
} catch (err) {
logger.debug(`Error while parsing custom id data (custom id: ${customId}): ${String(err)}`);
return {
namespace: "",
data: null,
};
}
return {
namespace: parts[1],
// Skipping timestamp
data: parsedData,
};
}