@dynamic-data/withings-mockups
Version:
Withings Mockup Data Generators
936 lines (865 loc) • 33.2 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var utils = require('@dynamic-data/utils');
var MOCK = require('@dynamic-data/withings-data');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var MOCK__default = /*#__PURE__*/_interopDefaultLegacy(MOCK);
var randomTimezone = function randomTimezone() {
var aryIannaTimeZones = ['Europe/Andorra', 'Asia/Dubai', 'Asia/Kabul', 'Europe/Tirane', 'Asia/Yerevan', 'Antarctica/Casey', 'Antarctica/Davis', 'Antarctica/DumontDUrville', // https://bugs.chromium.org/p/chromium/issues/detail?id=928068
'Antarctica/Mawson', 'Antarctica/Palmer', 'Antarctica/Rothera', 'Antarctica/Syowa', 'Antarctica/Troll', 'Antarctica/Vostok', 'America/Argentina/Buenos_Aires', 'America/Argentina/Cordoba', 'America/Argentina/Salta', 'America/Argentina/Jujuy', 'America/Argentina/Tucuman', 'America/Argentina/Catamarca', 'America/Argentina/La_Rioja', 'America/Argentina/San_Juan', 'America/Argentina/Mendoza', 'America/Argentina/San_Luis', 'America/Argentina/Rio_Gallegos', 'America/Argentina/Ushuaia', 'Pacific/Pago_Pago', 'Europe/Vienna', 'Australia/Lord_Howe', 'Antarctica/Macquarie', 'Australia/Hobart', 'Australia/Currie', 'Australia/Melbourne', 'Australia/Sydney', 'Australia/Broken_Hill', 'Australia/Brisbane', 'Australia/Lindeman', 'Australia/Adelaide', 'Australia/Darwin', 'Australia/Perth', 'Australia/Eucla', 'Asia/Baku', 'America/Barbados', 'Asia/Dhaka', 'Europe/Brussels', 'Europe/Sofia', 'Atlantic/Bermuda', 'Asia/Brunei', 'America/La_Paz', 'America/Noronha', 'America/Belem', 'America/Fortaleza', 'America/Recife', 'America/Araguaina', 'America/Maceio', 'America/Bahia', 'America/Sao_Paulo', 'America/Campo_Grande', 'America/Cuiaba', 'America/Santarem', 'America/Porto_Velho', 'America/Boa_Vista', 'America/Manaus', 'America/Eirunepe', 'America/Rio_Branco', 'America/Nassau', 'Asia/Thimphu', 'Europe/Minsk', 'America/Belize', 'America/St_Johns', 'America/Halifax', 'America/Glace_Bay', 'America/Moncton', 'America/Goose_Bay', 'America/Blanc-Sablon', 'America/Toronto', 'America/Nipigon', 'America/Thunder_Bay', 'America/Iqaluit', 'America/Pangnirtung', 'America/Atikokan', 'America/Winnipeg', 'America/Rainy_River', 'America/Resolute', 'America/Rankin_Inlet', 'America/Regina', 'America/Swift_Current', 'America/Edmonton', 'America/Cambridge_Bay', 'America/Yellowknife', 'America/Inuvik', 'America/Creston', 'America/Dawson_Creek', 'America/Fort_Nelson', 'America/Vancouver', 'America/Whitehorse', 'America/Dawson', 'Indian/Cocos', 'Europe/Zurich', 'Africa/Abidjan', 'Pacific/Rarotonga', 'America/Santiago', 'America/Punta_Arenas', 'Pacific/Easter', 'Asia/Shanghai', 'Asia/Urumqi', 'America/Bogota', 'America/Costa_Rica', 'America/Havana', 'Atlantic/Cape_Verde', 'America/Curacao', 'Indian/Christmas', 'Asia/Nicosia', 'Asia/Famagusta', 'Europe/Prague', 'Europe/Berlin', 'Europe/Copenhagen', 'America/Santo_Domingo', 'Africa/Algiers', 'America/Guayaquil', 'Pacific/Galapagos', 'Europe/Tallinn', 'Africa/Cairo', 'Africa/El_Aaiun', 'Europe/Madrid', 'Africa/Ceuta', 'Atlantic/Canary', 'Europe/Helsinki', 'Pacific/Fiji', 'Atlantic/Stanley', 'Pacific/Chuuk', 'Pacific/Pohnpei', 'Pacific/Kosrae', 'Atlantic/Faroe', 'Europe/Paris', 'Europe/London', 'Asia/Tbilisi', 'America/Cayenne', 'Africa/Accra', 'Europe/Gibraltar', 'America/Godthab', 'America/Danmarkshavn', 'America/Scoresbysund', 'America/Thule', 'Europe/Athens', 'Atlantic/South_Georgia', 'America/Guatemala', 'Pacific/Guam', 'Africa/Bissau', 'America/Guyana', 'Asia/Hong_Kong', 'America/Tegucigalpa', 'America/Port-au-Prince', 'Europe/Budapest', 'Asia/Jakarta', 'Asia/Pontianak', 'Asia/Makassar', 'Asia/Jayapura', 'Europe/Dublin', 'Asia/Jerusalem', 'Asia/Kolkata', 'Indian/Chagos', 'Asia/Baghdad', 'Asia/Tehran', 'Atlantic/Reykjavik', 'Europe/Rome', 'America/Jamaica', 'Asia/Amman', 'Asia/Tokyo', 'Africa/Nairobi', 'Asia/Bishkek', 'Pacific/Tarawa', 'Pacific/Enderbury', 'Pacific/Kiritimati', 'Asia/Pyongyang', 'Asia/Seoul', 'Asia/Almaty', 'Asia/Qyzylorda', 'Asia/Qostanay', // https://bugs.chromium.org/p/chromium/issues/detail?id=928068
'Asia/Aqtobe', 'Asia/Aqtau', 'Asia/Atyrau', 'Asia/Oral', 'Asia/Beirut', 'Asia/Colombo', 'Africa/Monrovia', 'Europe/Vilnius', 'Europe/Luxembourg', 'Europe/Riga', 'Africa/Tripoli', 'Africa/Casablanca', 'Europe/Monaco', 'Europe/Chisinau', 'Pacific/Majuro', 'Pacific/Kwajalein', 'Asia/Yangon', 'Asia/Ulaanbaatar', 'Asia/Hovd', 'Asia/Choibalsan', 'Asia/Macau', 'America/Martinique', 'Europe/Malta', 'Indian/Mauritius', 'Indian/Maldives', 'America/Mexico_City', 'America/Cancun', 'America/Merida', 'America/Monterrey', 'America/Matamoros', 'America/Mazatlan', 'America/Chihuahua', 'America/Ojinaga', 'America/Hermosillo', 'America/Tijuana', 'America/Bahia_Banderas', 'Asia/Kuala_Lumpur', 'Asia/Kuching', 'Africa/Maputo', 'Africa/Windhoek', 'Pacific/Noumea', 'Pacific/Norfolk', 'Africa/Lagos', 'America/Managua', 'Europe/Amsterdam', 'Europe/Oslo', 'Asia/Kathmandu', 'Pacific/Nauru', 'Pacific/Niue', 'Pacific/Auckland', 'Pacific/Chatham', 'America/Panama', 'America/Lima', 'Pacific/Tahiti', 'Pacific/Marquesas', 'Pacific/Gambier', 'Pacific/Port_Moresby', 'Pacific/Bougainville', 'Asia/Manila', 'Asia/Karachi', 'Europe/Warsaw', 'America/Miquelon', 'Pacific/Pitcairn', 'America/Puerto_Rico', 'Asia/Gaza', 'Asia/Hebron', 'Europe/Lisbon', 'Atlantic/Madeira', 'Atlantic/Azores', 'Pacific/Palau', 'America/Asuncion', 'Asia/Qatar', 'Indian/Reunion', 'Europe/Bucharest', 'Europe/Belgrade', 'Europe/Kaliningrad', 'Europe/Moscow', 'Europe/Simferopol', 'Europe/Kirov', 'Europe/Astrakhan', 'Europe/Volgograd', 'Europe/Saratov', 'Europe/Ulyanovsk', 'Europe/Samara', 'Asia/Yekaterinburg', 'Asia/Omsk', 'Asia/Novosibirsk', 'Asia/Barnaul', 'Asia/Tomsk', 'Asia/Novokuznetsk', 'Asia/Krasnoyarsk', 'Asia/Irkutsk', 'Asia/Chita', 'Asia/Yakutsk', 'Asia/Khandyga', 'Asia/Vladivostok', 'Asia/Ust-Nera', 'Asia/Magadan', 'Asia/Sakhalin', 'Asia/Srednekolymsk', 'Asia/Kamchatka', 'Asia/Anadyr', 'Asia/Riyadh', 'Pacific/Guadalcanal', 'Indian/Mahe', 'Africa/Khartoum', 'Europe/Stockholm', 'Asia/Singapore', 'America/Paramaribo', 'Africa/Juba', 'Africa/Sao_Tome', 'America/El_Salvador', 'Asia/Damascus', 'America/Grand_Turk', 'Africa/Ndjamena', 'Indian/Kerguelen', 'Asia/Bangkok', 'Asia/Dushanbe', 'Pacific/Fakaofo', 'Asia/Dili', 'Asia/Ashgabat', 'Africa/Tunis', 'Pacific/Tongatapu', 'Europe/Istanbul', 'America/Port_of_Spain', 'Pacific/Funafuti', 'Asia/Taipei', 'Europe/Kiev', 'Europe/Uzhgorod', 'Europe/Zaporozhye', 'Pacific/Wake', 'America/New_York', 'America/Detroit', 'America/Kentucky/Louisville', 'America/Kentucky/Monticello', 'America/Indiana/Indianapolis', 'America/Indiana/Vincennes', 'America/Indiana/Winamac', 'America/Indiana/Marengo', 'America/Indiana/Petersburg', 'America/Indiana/Vevay', 'America/Chicago', 'America/Indiana/Tell_City', 'America/Indiana/Knox', 'America/Menominee', 'America/North_Dakota/Center', 'America/North_Dakota/New_Salem', 'America/North_Dakota/Beulah', 'America/Denver', 'America/Boise', 'America/Phoenix', 'America/Los_Angeles', 'America/Anchorage', 'America/Juneau', 'America/Sitka', 'America/Metlakatla', 'America/Yakutat', 'America/Nome', 'America/Adak', 'Pacific/Honolulu', 'America/Montevideo', 'Asia/Samarkand', 'Asia/Tashkent', 'America/Caracas', 'Asia/Ho_Chi_Minh', 'Pacific/Efate', 'Pacific/Wallis', 'Pacific/Apia', 'Africa/Johannesburg'];
return aryIannaTimeZones[utils.getRandomInt(0, aryIannaTimeZones.length - 1)];
};
var SleepSummaryModel = {
//Needs some sort of intergration with TZ database
timezone: function timezone() {
return randomTimezone();
},
model: function model() {
switch (utils.getRandomInt(1, 2)) {
case 1:
return 16;
case 2:
return 32;
}
},
model_id: function model_id() {
var models = [60, 61, 63, 51, 52, 53, 54, 55, 59, 58, 90, 91, 92, 93];
return models[utils.getRandomInt(0, models.length - 1)];
},
startdate: function startdate() {
var finalDate = new Date(0);
var maxMonthDate = new Date(0);
finalDate.setFullYear(utils.getRandomInt(2020, 2050));
finalDate.setMonth(utils.getRandomInt(0, 11));
finalDate.setDate(1);
maxMonthDate = finalDate;
maxMonthDate.setMonth(maxMonthDate.getMonth() + 1);
maxMonthDate.setDate(0);
finalDate.setDate(utils.getRandomInt(1, maxMonthDate.getDate()) - 1);
finalDate.setHours(utils.getRandomInt(21, 24) - 1, utils.getRandomInt(0, 60) - 1, utils.getRandomInt(0, 60) - 1);
return finalDate.getTime() / 1000;
},
enddate: function enddate(startdate) {
var finalDate = new Date(startdate * 1000);
finalDate.setHours(0, 0, 0, 0);
finalDate.setDate(finalDate.getDate() + 1);
return Math.round(finalDate.getTime() / 1000) + utils.getRandomInt(1800, 36000);
},
date: function date(enddate) {
var finalDate = new Date(enddate * 1000);
var finalDateStr = finalDate.toISOString();
return finalDateStr.split("T")[0]; // return "2020-07-09"
},
created: function created(enddate) {
return enddate;
},
modified: function modified(enddate) {
return enddate;
},
apnea_hypopnea_index: function apnea_hypopnea_index() {
return 0;
},
asleepduration: function asleepduration() {
return 0;
},
breathing_disturbances_intensity: function breathing_disturbances_intensity() {
return 0;
},
deepsleepduration: function deepsleepduration() {
return 0;
},
durationtosleep: function durationtosleep() {
return 0;
},
durationtowakeup: function durationtowakeup() {
return 0;
},
hr_average: function hr_average() {
return 0;
},
hr_max: function hr_max() {
return 0;
},
hr_min: function hr_min() {
return 0;
},
lightsleepduration: function lightsleepduration() {
return 0;
},
nb_rem_episodes: function nb_rem_episodes() {
return 0;
},
night_events: function night_events() {
return 0;
},
out_of_bed_count: function out_of_bed_count() {
return 0;
},
remsleepduration: function remsleepduration() {
return 0;
},
rr_average: function rr_average() {
return 0;
},
rr_max: function rr_max() {
return 0;
},
rr_min: function rr_min() {
return 0;
},
sleep_efficiency: function sleep_efficiency() {
return 0;
},
sleep_latency: function sleep_latency() {
return 0;
},
sleep_score: function sleep_score() {
return 0;
},
snoring: function snoring() {
return 0;
},
snoringepisodecount: function snoringepisodecount() {
return 0;
},
total_sleep_time: function total_sleep_time() {
return 0;
},
total_timeinbed: function total_timeinbed() {
return 0;
},
wakeup_latency: function wakeup_latency() {
return 0;
},
wakeupcount: function wakeupcount() {
return 0;
},
wakeupduration: function wakeupduration() {
return 0;
},
waso: function waso() {
return 0;
}
};
var SleepGetModel = {
startdate: function startdate() {
var finalDate = new Date(0);
var maxMonthDate = new Date(0);
finalDate.setFullYear(utils.getRandomInt(2020, 2050));
finalDate.setMonth(utils.getRandomInt(0, 11));
finalDate.setDate(1);
maxMonthDate = finalDate;
maxMonthDate.setMonth(maxMonthDate.getMonth() + 1);
maxMonthDate.setDate(0);
finalDate.setDate(utils.getRandomInt(1, maxMonthDate.getDate()) - 1);
finalDate.setHours(utils.getRandomInt(21, 24) - 1, utils.getRandomInt(0, 60) - 1, utils.getRandomInt(0, 60) - 1);
return finalDate.getTime() / 1000;
},
enddate: function enddate(startdate) {
var finalDate = new Date(startdate * 1000);
finalDate.setHours(0, 0, 0, 0);
finalDate.setDate(finalDate.getDate() + 1);
return Math.round(finalDate.getTime() / 1000) + utils.getRandomInt(1800, 36000);
},
model: function model(id) {
switch (id) {
case 60:
return "Aura Dock";
case 61:
return "Aura Sensor";
case 63:
return "Aura Sensor V2";
case 51:
return "Pulse";
case 52:
return "Activite";
case 53:
return "Activite (Pop, Steel)";
case 54:
return "Withings Go";
case 55:
return "Activite Steel HR";
case 59:
return "Activite Steel HR Sport Edition";
case 58:
return "Pulse HR";
case 90:
return "Move";
case 91:
return "Move ECG";
case 92:
return "Move ECG";
case 93:
return "ScanWatch";
}
return "Aura Sensor V2";
},
state: function state() {
return utils.getRandomInt(0, 6) - 1;
},
model_id: function model_id() {
var ids = [60, 61, 63, 51, 52, 53, 54, 55, 59, 58, 90, 91, 92, 93];
return ids[utils.getRandomInt(0, ids.length - 1)];
},
hr: function hr() {
return {
$timestamp: 0
};
},
rr: function rr() {
return {
$timestamp: 0
};
},
snoring: function snoring() {
return {
$timestamp: 0
};
},
sdnn_1: function sdnn_1() {
return {
$timestamp: 0
};
},
rmssd: function rmssd() {
return {
$timestamp: 0
};
}
};
var HeartListModel = {
deviceid: function deviceid() {
var result = '';
var characters = 'abcdef0123456789';
var charactersLength = characters.length;
for (var i = 0; i < 40; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
},
model: function model() {
switch (utils.getRandomInt(0, 2)) {
case 1:
return 44;
case 2:
return 91;
}
},
ecg: function ecg() {
return {
signalid: 48,
afib: utils.getRandomInt(0, 3) - 1
};
},
bloodpressure: function bloodpressure() {
return {
diastole: 100,
systole: 101
};
},
heart_rate: function heart_rate() {
return 82;
},
timestamp: function timestamp() {
var finalDate = new Date(0);
var maxMonthDate = new Date(0);
finalDate.setFullYear(utils.getRandomInt(2020, 2050));
finalDate.setMonth(utils.getRandomInt(0, 11));
finalDate.setDate(1);
maxMonthDate = finalDate;
maxMonthDate.setMonth(maxMonthDate.getMonth() + 1);
maxMonthDate.setDate(0);
finalDate.setDate(utils.getRandomInt(1, maxMonthDate.getDate()) - 1);
finalDate.setHours(utils.getRandomInt(21, 24) - 1, utils.getRandomInt(0, 60) - 1, utils.getRandomInt(0, 60) - 1);
return finalDate.getTime() / 1000;
},
timezone: function timezone() {
return randomTimezone();
}
};
var HeartGetModel = {
signal: function signal() {
return "[1,2,3,4,5,6,7,8,9]";
},
sampling_frequency: function sampling_frequency() {
return 500;
},
wearposition: function wearposition() {
return utils.getRandomInt(0, 13) - 1;
}
};
var WorkoutModel = {
category: function category() {
var categories = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 128, 187, 188, 191, 192, 193, 194, 195, 196, 272, 306, 307, 308];
return categories[utils.getRandomInt(0, categories.length - 1)];
},
timezone: function timezone() {
return randomTimezone();
},
model: function model() {
var models = [1, 2, 3, 4, 5, 6, 13, 21, 22, 41, 42, 43, 44, 45, 51, 52, 53, 54, 55, 58, 59, 60, 61, 62, 63, 70, 91, 92, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059];
return models[utils.getRandomInt(0, models.length - 1)];
},
attrib: function attrib() {
return utils.getRandomInt(0, 9) - 1;
},
startdate: function startdate() {
var finalDate = new Date(0);
var maxMonthDate = new Date(0);
finalDate.setFullYear(utils.getRandomInt(2020, 2050));
finalDate.setMonth(utils.getRandomInt(0, 11));
finalDate.setDate(1);
maxMonthDate = finalDate;
maxMonthDate.setMonth(maxMonthDate.getMonth() + 1);
maxMonthDate.setDate(0);
finalDate.setDate(utils.getRandomInt(1, maxMonthDate.getDate()) - 1);
finalDate.setHours(utils.getRandomInt(8, 18) - 1, utils.getRandomInt(0, 60) - 1, utils.getRandomInt(0, 60) - 1);
return finalDate.getTime() / 1000;
},
enddate: function enddate(startdate) {
return startdate + utils.getRandomInt(600, 10800);
},
date: function date(_date) {
var finalDate = new Date(_date * 1000);
var finalDateStr = finalDate.toISOString();
return finalDateStr.split("T")[0];
},
modified: function modified(enddate) {
return enddate;
},
deviceid: function deviceid() {
var result = '';
var characters = 'abcdef0123456789';
var charactersLength = characters.length;
for (var i = 0; i < 40; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
},
algo_pause_duration: function algo_pause_duration() {
return 0;
},
calories: function calories() {
return 0;
},
distance: function distance() {
return 0;
},
elevation: function elevation() {
return 0;
},
hr_average: function hr_average() {
return 0;
},
hr_max: function hr_max() {
return 0;
},
hr_min: function hr_min() {
return 0;
},
hr_zone_0: function hr_zone_0() {
return 0;
},
hr_zone_1: function hr_zone_1() {
return 0;
},
hr_zone_2: function hr_zone_2() {
return 0;
},
hr_zone_3: function hr_zone_3() {
return 0;
},
intensity: function intensity() {
return 0;
},
manual_calories: function manual_calories() {
return 0;
},
manual_distance: function manual_distance() {
return 0;
},
pause_duration: function pause_duration() {
return 0;
},
pool_laps: function pool_laps() {
return 0;
},
pool_length: function pool_length() {
return 0;
},
spo2_average: function spo2_average() {
return 0;
},
steps: function steps() {
return 0;
},
strokes: function strokes() {
return 0;
}
};
var IntradayActivityModel = {
deviceid: function deviceid() {
var result = '';
var characters = 'abcdef0123456789';
var charactersLength = characters.length;
for (var i = 0; i < 40; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
},
model: function model() {
var models = ["Withings WBS01", "WS30", "Kid Scale", "Smart Body Analyzer", "Body+", "Body Cardio", "Body", "WBS08", "Body Pro", "WBS10", "WBS11", "Smart Baby Monitor", "Withings Home", "Withings Blood Pressure Monitor V1", "Withings Blood Pressure Monitor V2", "Withings Blood Pressure Monitor V3", "BPM Core", "BPM Connect", "BPM Connect Pro", "Pulse", "Activite", "Activite (Pop, Steel)", "Withings Go", "Activite Steel HR", "Activite Steel HR Sport Edition", "Pulse HR", "Move", "Move ECG", "ScanWatch", "Aura Dock", "Aura Sensor", "Aura Sensor V2", "Thermo", "WUP01"];
return models[utils.getRandomInt(0, models.length - 1)];
},
model_id: function model_id() {
var ids = [1, 2, 3, 4, 5, 6, 7, 10, 9, 11, 12, 21, 22, 41, 42, 43, 44, 45, 46, 51, 52, 53, 54, 55, 59, 58, 90, 91, 92, 93, 60, 61, 63, 70, 100];
return ids[utils.getRandomInt(0, ids.length - 1)];
},
steps: function steps() {
return 0;
},
elevation: function elevation() {
return 0;
},
calories: function calories() {
return 0;
},
distance: function distance() {
return 0;
},
stroke: function stroke() {
return 0;
},
pool_lap: function pool_lap() {
return 0;
},
duration: function duration() {
return 0;
},
heart_rate: function heart_rate() {
return 0;
},
spo2_auto: function spo2_auto() {
return 0;
}
};
var ActivityModel = {
date: function date() {
var finalDate = new Date(0);
var maxMonthDate = new Date(0);
finalDate.setFullYear(utils.getRandomInt(2020, 2050));
finalDate.setMonth(utils.getRandomInt(0, 11));
finalDate.setDate(1);
maxMonthDate = finalDate;
maxMonthDate.setMonth(maxMonthDate.getMonth() + 1);
maxMonthDate.setDate(0);
finalDate.setDate(utils.getRandomInt(1, maxMonthDate.getDate()) - 1);
var finalDateStr = finalDate.toISOString();
return finalDateStr.split("T")[0];
},
timezone: function timezone() {
return randomTimezone();
},
deviceid: function deviceid() {
var result = '';
var characters = 'abcdef0123456789';
var charactersLength = characters.length;
for (var i = 0; i < 40; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
},
hash_deviceid: function hash_deviceid() {
var result = '';
var characters = 'abcdef0123456789';
var charactersLength = characters.length;
for (var i = 0; i < 40; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
},
brand: function brand() {
switch (utils.getRandomInt(1, 2)) {
case 1:
return 1;
case 2:
return 18;
}
},
is_tracker: function is_tracker() {
switch (utils.getRandomInt(1, 2)) {
case 1:
return true;
case 2:
return false;
}
},
steps: function steps() {
return 6200;
},
distance: function distance() {
return 3000;
},
elevation: function elevation() {
return 100;
},
soft: function soft() {
return 800;
},
moderate: function moderate() {
return 1000;
},
intense: function intense() {
return 700;
},
active: function active() {
return 2300;
},
calories: function calories() {
return 1200;
},
totalcalories: function totalcalories() {
return 3500;
},
hr_average: function hr_average() {
return 80;
},
hr_min: function hr_min() {
return 70;
},
hr_max: function hr_max() {
return 80;
},
hr_zone_0: function hr_zone_0() {
return 100;
},
hr_zone_1: function hr_zone_1() {
return 200;
},
hr_zone_2: function hr_zone_2() {
return 300;
},
hr_zone_3: function hr_zone_3() {
return 400;
}
};
var MeasurementModel = {
grpid: function grpid() {
return 12;
},
attrib: function attrib() {
return utils.getRandomInt(0, 9) - 1;
},
date: function date(created) {
var finalDate = new Date(created * 1000);
var finalDateStr = finalDate.toISOString();
return finalDateStr.split("T")[0]; // return "2020-07-09"
},
created: function created() {
var finalDate = new Date(0);
var maxMonthDate = new Date(0);
finalDate.setFullYear(utils.getRandomInt(2020, 2050));
finalDate.setMonth(utils.getRandomInt(0, 11));
finalDate.setDate(1);
maxMonthDate = finalDate;
maxMonthDate.setMonth(maxMonthDate.getMonth() + 1);
maxMonthDate.setDate(0);
finalDate.setDate(utils.getRandomInt(1, maxMonthDate.getDate()) - 1);
finalDate.setHours(utils.getRandomInt(0, 24) - 1, utils.getRandomInt(0, 60) - 1, utils.getRandomInt(0, 60) - 1);
return finalDate.getTime() / 1000;
},
category: function category() {
return utils.getRandomInt(0, 2);
},
deviceid: function deviceid() {
var result = '';
var characters = 'abcdef0123456789';
var charactersLength = characters.length;
for (var i = 0; i < 40; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
},
measures: function measures() {
var types = [1, 4, 5, 6, 8, 9, 10, 11, 12, 54, 71, 73, 76, 77, 88, 91, 123, 135, 136, 137, 138, 139];
return [{
value: 65750,
type: types[utils.getRandomInt(0, types.length - 1)],
unit: utils.getRandomInt(-5, 5),
algo: 3425,
fm: 1,
fw: 1000
}];
},
comment: function comment() {
return "";
},
timezone: function timezone() {
return randomTimezone();
}
};
var dataModels = {
Activity: {
data: MOCK__default["default"].Getactivity,
mockup: ActivityModel
},
Heart: {
data: MOCK__default["default"].Heart,
mockup: HeartGetModel
},
HeartList: {
data: MOCK__default["default"].HeartList,
mockup: HeartListModel
},
Sleep: {
data: MOCK__default["default"].Sleep,
mockup: SleepGetModel
},
SleepSummary: {
data: MOCK__default["default"].SleepSummary,
mockup: SleepSummaryModel
},
Workout: {
data: MOCK__default["default"].getWorkout,
mockup: WorkoutModel
},
IntradayActivity: {
data: MOCK__default["default"].Getintradayactivity,
mockup: IntradayActivityModel
},
Measurement: {
data: MOCK__default["default"].Getmeas,
mockup: MeasurementModel
}
};
function getModelCSVHeader(dataModel) {
return dataModels[dataModel].data[0].split("\t");
}
function getSleepSummaryMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["timezone", "model", "model_id", "startdate", "enddate", "date", "created", "modified", "data"].forEach(function (key, i) {
switch (key) {
case "enddate":
mockupData[key] = mockupModel[key](mockupData["startdate"]);
break;
case "date":
case "created":
case "modified":
mockupData[key] = mockupModel[key](mockupData["enddate"]);
break;
case "data":
["apnea_hypopnea_index", "asleepduration", "breathing_disturbances_intensity", "deepsleepduration", "durationtosleep", "durationtowakeup", "hr_average", "hr_max", "hr_min", "lightsleepduration", "nb_rem_episodes", "night_events", "out_of_bed_count", "remsleepduration", "rr_average", "rr_max", "rr_min", "sleep_efficiency", "sleep_latency", "sleep_score", "snoring", "snoringepisodecount", "total_sleep_time", "total_timeinbed", "wakeup_latency", "wakeupcount", "wakeupduration", "waso"].forEach(function (key2) {
switch (key2) {
default:
mockupData[key][key2] = mockupModel[key2]();
break;
}
});
break;
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getSleepMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["startdate", "enddate", "state", "model_id", "model", "hr", "rr", "snoring", "sdnn_1", "rmssd"].forEach(function (key, i) {
switch (key) {
case "enddate":
mockupData[key] = mockupModel[key](mockupData["startdate"]);
break;
case "model":
mockupData[key] = mockupModel[key](mockupData["model_id"]);
break;
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getHeartListMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["deviceid", "model", "ecg", "bloodpressure", "heart_rate", "timestamp", "timezone"].forEach(function (key, i) {
switch (key) {
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getHeartMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["signal", "sampling_frequency", "wearposition"].forEach(function (key, i) {
switch (key) {
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getWorkoutMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["category", "timezone", "model", "attrib", "startdate", "enddate", "date", "modified", "deviceid", "data"].forEach(function (key, i) {
switch (key) {
case "enddate":
mockupData[key] = mockupModel[key](mockupData["startdate"]);
break;
case "date":
case "modified":
mockupData[key] = mockupModel[key](mockupData["enddate"]);
break;
case "data":
["algo_pause_duration", "calories", "distance", "elevation", "hr_average", "hr_max", "hr_min", "hr_zone_0", "hr_zone_1", "hr_zone_2", "hr_zone_3", "intensity", "manual_calories", "manual_distance", "pause_duration", "pool_laps", "pool_length", "spo2_average", "steps", "strokes"].forEach(function (key2) {
switch (key2) {
default:
mockupData[key][key2] = mockupModel[key2]();
break;
}
});
break;
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getIntradayActivityMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["deviceid", "model", "model_id", "steps", "elevation", "calories", "distance", "stroke", "pool_lap", "duration", "heart_rate", "spo2_auto"].forEach(function (key, i) {
switch (key) {
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getActivityMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["date", "timezone", "deviceid", "hash_deviceid", "brand", "is_tracker", "steps", "distance", "elevation", "soft", "moderate", "intense", "active", "calories", "totalcalories", "hr_average", "hr_min", "hr_max", "hr_zone_0", "hr_zone_1", "hr_zone_2", "hr_zone_3"].forEach(function (key, i) {
switch (key) {
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
function getMeasurementMockupData(dataType, dataModel, dataDate) {
var mockupData = {};
var mockupModel = dataModels[dataModel].mockup;
if (dataType === "SYNC") {
mockupData = dataModels[dataModel].data;
}
if (dataType === "ASYNC") {
var mockupDataRow = dataModels[dataModel].data[1].split("\t");
var mockupDataHeader = dataModels[dataModel].data[0].split("\t");
mockupDataHeader.forEach(function (k, i) {
mockupData[k] = mockupDataRow[i];
});
}
["grpid", "attrib", "created", "date", "category", "deviceid", "measures", "comment", "timezone"].forEach(function (key, i) {
switch (key) {
case "date":
mockupData[key] = mockupModel[key](mockupData["created"]);
break;
default:
mockupData[key] = mockupModel[key]();
break;
}
});
return mockupData;
}
exports.getActivityMockupData = getActivityMockupData;
exports.getHeartListMockupData = getHeartListMockupData;
exports.getHeartMockupData = getHeartMockupData;
exports.getIntradayActivityMockupData = getIntradayActivityMockupData;
exports.getMeasurementMockupData = getMeasurementMockupData;
exports.getModelCSVHeader = getModelCSVHeader;
exports.getSleepMockupData = getSleepMockupData;
exports.getSleepSummaryMockupData = getSleepSummaryMockupData;
exports.getWorkoutMockupData = getWorkoutMockupData;