Человекочитаемые описания аттрибутов из API thebasetrip.com на русском и английском языках
Get human-readable attributes of thebasetrip.com API on English and Russian
Модуль для удобства получения нормальных (переведенных) значений аттрибутов из API thebasetrip.com. Написал для более удобного использования данных в шаблонах (чтобы не писать постоянно привязку того или иного значения к переводу). Например, в ответе API есть массив, содержащий союзы, куда входит страна (для Европы), типа ['EUROPEAN_UNION', 'EUROPEAN_ECONOMIC_AREA']
. Используя модуль - lib.getUnions(unions_array_here)
, получим на выходе текст: Европейский союз, Европейская экономическая зона
, и оп - уже не нужно писать логику в шаблоне. Если вам не нужен модуль, можете просто взять данные из data/definitions.js
и использовать как хотите.
Замечание: данных c github в субрегионах используются обозначения типа WESTERN_EUROPE
, в платной версии API уже используется версия Western Europe
. Я пока использую бесплатную, а остальное запилил на будущее, поэтому учитывайте этот момент.
npm:
npm install thebasetrip-definitions
yarn:
yarn add thebasetrip-definitions
Обычный require:
const thebasetripDefs = require('thebasetrip-definitions');
Или нужные функции с помощью модулей:
import { getLanguageType, getCountryNameType } from 'thebasetrip-definitions';
Все модули принимают первым параметром аттрибут из API, вторым локаль, если не указать, то используется русская ru
. Вторая доступная - en
.
lib.getDrugs.useType("PERSONAL", "ru"); // Личное употребление
Тип языка (пока только официальный).
Регион страны.
lib.getLocationRegion("AMERICAS"); // Америка
Суб-регион страны.
lib.getLocationSubregion("AUSTRALIA_AND_NEW_ZEALAND"); // Австралия и Новая Зеландия
Союз(ы), в которые входит страна (пока только для Европы).
lib.getUnions(["EUROPEAN_UNION", "EUROPEAN_ECONOMIC_AREA", "SCHENGEN_AREA"]); // Европейский союз, Европейская экономическая зона, Шенгенская зона
Системы измерения, используемые в стране.
lib.getUnions("BURMESE_SYSTEM"); // Бирманская система мер
Религии в стране.
lib.getReligionType("BUDDHISM"); // Буддизм
Номера экстренных служб.
lib.getEmergencyNumberType("FIRE_DEPARTMENT"); // Пожарный департамент
Покрытие банкоматов в стране.
lib.getATMs("VERY_COMMON"); // Очень распространены
Информация о вождении в стране.
Тип прав, нужный для вождения в стране.
lib.getDriving.license("IDP"); // Международное водительское удостоверение
Виды топлива в стране.
lib.getDriving.fuelType("DIESEL"); // Дизель
Учреждения, управляющие дорогами страны.
lib.getDriving.entityType("TRAFFIC_NEWS"); // Дорожные новости
Типы коробок передач.
lib.getDriving.transmission("MANUAL"); // Ручная
Типы дорог (используется для ограничений скорости).
lib.getDriving.roadType("RESIDENTIAL_AREAS"); // Жилые районы
Сторона вождения (право-лево).
lib.getDriving.side("RIGHT"); // Правостороннее
Информация о вакцинах и рисках при въезде в страну.
Необходимость вакцинации при въезде в страну.
lib.getHealth.policy("NOT_REQUIRED_BUT_RECOMMENDED"); // Не требуется, но рекомендуется
От каких болезней нужно прививаться для въезда в страну.
lib.getHealth.risks("JAPANESE_ENCEPHALITIS"); // Японский энцефалит
Тип названия страны (официальный или общепринятый).
lib.getCountryNameType("COMMON"); // Общепринятое
Монета или банкнота.
lib.getCurrencyType("COIN"); // Монета
Тип сетей, 2G, 3G, 4G.
lib.getMobileType("4G"); // 4G
Распространенность wi-fi в стране.
lib.getWifiCoverage("VERY_COMMON"); // Встречается очень часто
Информация о чаевых в стране.
Для кого давать чаевые.
lib.getTipping.category("HOTEL_HOUSEKEEPER"); // Горничная в отеле
Как часто чаевые включены в счёт.
lib.getTipping.serviceCharge("SOMETIMES"); // Иногда
Где (и как?) оставлять чаевые. Например, есть параметр DISCREET
, что означает, что их нужно давать скрытно, осторожно, не на виду.
lib.getTipping.placeToTip("BEDSIDE_TABLE"); // Прикроватный столик
Как часто нужно давать чаевые.
lib.getTipping.frequency("PER_PERSON"); // За одного человека
Ожидает ли чаевые данный тип персонала?
lib.getTipping.expectations("NOT_EXPECTED"); // Не ожидаются
За какое обслуживание сколько давать чаевых (?)
lib.getTipping.serviceQuality("EXCELLENT"); // Отличное
Информация о наркотиках в стране.
Тип наркотиков, пока только "в целом" и "марихуанна".
lib.getDrugs.type("CANNABIS"); // Марихуанна
Что можно делать (продажа, транспортировка, обладание).
lib.getDrugs.purpose("CULTIVATION"); // Выращивание
Для каких целей можно использовать.
lib.getDrugs.useType("MEDICAL"); // Медицинские показания
Единица ограничения (грам, таблетка, кустик, косяк).
lib.getDrugs.limitUnit("TABLET"); // Таблетка
Информация о кредитных картах.
Уровень принятия карт международных систем.
lib.getCards.acceptIntl("VERY_HIGH"); // Очень высокое
Бренды карт (Виза, Мастеркард и т.д.)
lib.getCards.brand("MASTERCARD"); // Мастеркард
Уровень принятия карт в целом.
lib.getCards.acceptance("NONE"); // Не принимаются
npm test