UNPKG

mtl-js-sdk

Version:

ynf-fw-mtl-api

62 lines (60 loc) 1.91 kB
import {invokeSuccess, invokeFail} from '../callback' import {localizedString} from '../localization' import {execUpesnBridgeify,canExecUpesnBridge} from '../bridge/index' export function chooseCity(param = {}) { let obj = api.require('mtlCityPicker'); if (!obj) { if (canExecUpesnBridge()) { execUpesnBridgeify('chooseCity', param); return; } invokeFail(param, {msg:'module mtlCityPicker not added'}); return; } obj.chooseCity(param, function(ret, err) { if (ret) { invokeSuccess(param, ret); } else { invokeFail(param, err); } }); } export function dateTimePicker(param = {}) { function b(n) { if (n < 10) { return '0' + n; } return n; } let {format, currentDate} = param; let type = 'date'; if (format == 'HH:mm') { type = 'time'; } else if (format == 'yyyy-MM-dd HH:mm' && api.systemType == 'ios') { type = 'date_time'; } api.openPicker({ type:type, date:currentDate, cancelText:localizedString('cancel'), doneText:localizedString('done') }, function(ret, err){ if (ret) { let str; if (format == 'HH:mm') { str = `${b(ret.hour)}:${b(ret.minute)}`; } else if (format == 'yyyy-MM-dd HH:mm') { str = `${ret.year}-${b(ret.month)}-${b(ret.day)} ${b(ret.hour)}:${b(ret.minute)}`; } else if (format == 'yyyy-MM') { str = `${ret.year}-${b(ret.month)}`; } else if (format == 'yyyy') { str = `${ret.year}`; } else { str = `${ret.year}-${b(ret.month)}-${b(ret.day)}`; } invokeSuccess(param, {dateTime:str, time:str}); } else { invokeFail(param, err); } }); }