14 lines
405 B
JavaScript
14 lines
405 B
JavaScript
const normalizeProjectPathForId = (value) => {
|
|||
|
|
if (typeof value !== 'string') return '';
|
||
|
|
return value.replace(/\\/g, '/').replace(/\/+$/g, '') || value;
|
||
|
|
};
|
||
|
|
|
||
|
|
export const createProjectIdFromPath = (projectPath) => {
|
||
|
|
const normalized = normalizeProjectPathForId(projectPath).trim();
|
||
|
|
if (!normalized) {
|
||
|
|
return '';
|
||
|
|
}
|
||
|
|
|
||
|
|
return `path_${Buffer.from(normalized, 'utf8').toString('base64url')}`;
|
||
|
|
};
|