/
wax_boy
/
semaphore_custom
Обзор
Документация
Войти
/
wax_boy
/
semaphore_custom
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
web/src/lib/environmentList.js
42 строки
946 B
Alex
feat: customize semaphore task controls
04 авг 2026, 19:06
04 авг 2026, 19:06
a0a5136
Код
Авторство
О чём код?
export function getNextEnvironmentCopyName(sourceName, existingNames) { const names = new Set(existingNames); const firstCopyName = `Copy of ${sourceName}`; if (!names.has(firstCopyName)) { return firstCopyName; } let copyNumber = 2; while (names.has(`Copy ${copyNumber} of ${sourceName}`)) { copyNumber += 1; } return `Copy ${copyNumber} of ${sourceName}`; } function jsonObjectString(value) { return value || '{}'; } export function prepareEnvironmentCopyPayload(environment, name) { const payload = { ...environment, name, json: jsonObjectString(environment.json), env: jsonObjectString(environment.env), sync_paths: Array.isArray(environment.sync_paths) ? environment.sync_paths.map((path) => ({ ...path })) : [], }; [ 'id', 'secrets', 'last_synced_at', 'last_sync_failed_at', ].forEach((field) => { delete payload[field]; }); return payload; }