Skip to main content
Glama
dvvolkovv

Human Design MCP Server

by dvvolkovv
timezone-utils.cjs1.89 kB
/** * Утилиты для работы с часовыми поясами * Обертка над полной базой данных timezone */ const tzDB = require('./timezone-database.cjs'); /** * Определить часовой пояс и координаты по названию города */ function getLocationInfo(cityName) { const result = tzDB.findTimezoneByCity(cityName); return { city: result.city || cityName, tz: result.timezone, lat: result.latitude, lon: result.longitude }; } /** * Определить UTC offset для даты (учитывая DST) */ function getUTCOffset(cityName, birthDate) { const locationInfo = getLocationInfo(cityName); const offsetData = tzDB.getUTCOffsetWithDST(birthDate, locationInfo.tz); return offsetData.offset; } /** * Конвертировать local time в UTC */ function localTimeToUTC(localTime, utcOffset) { const [hour, minute] = localTime.split(':').map(Number); const utcHour = hour - utcOffset; // Обработка перехода через полуночь let adjustedHour = utcHour; if (adjustedHour < 0) adjustedHour += 24; if (adjustedHour >= 24) adjustedHour -= 24; return { hour: adjustedHour, minute: minute, offset: utcOffset }; } /** * Конвертировать local time в UTC (с учетом даты) */ function convertToUTC(birthDate, birthTime, cityName) { const fullResult = tzDB.convertLocalToUTC(birthDate, birthTime, cityName); return { utcYear: fullResult.utcYear, utcMonth: fullResult.utcMonth, utcDay: fullResult.utcDay, utcHour: fullResult.utcHour, utcMinute: fullResult.utcMinute, offset: fullResult.localOffset, originalLocalTime: fullResult.originalLocalTime }; } module.exports = { getLocationInfo, getUTCOffset, localTimeToUTC, convertToUTC };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dvvolkovv/MCP_Human_design'

If you have feedback or need assistance with the MCP directory API, please join our Discord server