@moshenguo/ms-data-sdk 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/build/MsDataSdk.types.d.ts +0 -1
  2. package/build/MsDataSdkModule.d.ts +0 -1
  3. package/build/MsDataSdkModule.web.d.ts +0 -1
  4. package/build/index.d.ts +2 -6
  5. package/build/sdk/bleConst.d.ts +0 -1
  6. package/build/sdk/bleSDK.d.ts +0 -1
  7. package/build/sdk/constants.d.ts +0 -1
  8. package/build/sdk/models.d.ts +0 -1
  9. package/build/sdk/resolveUtil.d.ts +0 -1
  10. package/dist/index.esm.js +2 -0
  11. package/dist/index.esm.js.map +1 -0
  12. package/dist/index.min.js +2 -0
  13. package/dist/index.min.js.map +1 -0
  14. package/docs/assets/navigation.js +1 -1
  15. package/docs/assets/search.js +1 -1
  16. package/docs/classes/BleSDK.html +56 -56
  17. package/docs/classes/ResolveUtil.html +12 -12
  18. package/docs/hierarchy.html +1 -1
  19. package/docs/index.html +2 -2
  20. package/docs/interfaces/MyAlarmClockV4.html +9 -0
  21. package/docs/interfaces/MyAutomaticHRMonitoring.html +33 -0
  22. package/docs/interfaces/MyDeviceInfo.html +10 -0
  23. package/docs/interfaces/MyPersonalInfo.html +6 -0
  24. package/docs/interfaces/MySedentaryReminderV4.html +25 -0
  25. package/docs/interfaces/MyWeeksV4.html +8 -0
  26. package/docs/modules.html +1 -1
  27. package/docs/variables/BleConst.html +1 -0
  28. package/docs/variables/DeviceKey.html +1 -1
  29. package/package.json +24 -17
  30. package/build/MsDataSdk.types.d.ts.map +0 -1
  31. package/build/MsDataSdk.types.js +0 -2
  32. package/build/MsDataSdk.types.js.map +0 -1
  33. package/build/MsDataSdkModule.d.ts.map +0 -1
  34. package/build/MsDataSdkModule.js +0 -4
  35. package/build/MsDataSdkModule.js.map +0 -1
  36. package/build/MsDataSdkModule.web.d.ts.map +0 -1
  37. package/build/MsDataSdkModule.web.js +0 -12
  38. package/build/MsDataSdkModule.web.js.map +0 -1
  39. package/build/index.d.ts.map +0 -1
  40. package/build/index.js +0 -11
  41. package/build/index.js.map +0 -1
  42. package/build/sdk/bleConst.d.ts.map +0 -1
  43. package/build/sdk/bleConst.js +0 -287
  44. package/build/sdk/bleConst.js.map +0 -1
  45. package/build/sdk/bleSDK.d.ts.map +0 -1
  46. package/build/sdk/bleSDK.js +0 -1106
  47. package/build/sdk/bleSDK.js.map +0 -1
  48. package/build/sdk/constants.d.ts.map +0 -1
  49. package/build/sdk/constants.js +0 -20
  50. package/build/sdk/constants.js.map +0 -1
  51. package/build/sdk/models.d.ts.map +0 -1
  52. package/build/sdk/models.js +0 -2
  53. package/build/sdk/models.js.map +0 -1
  54. package/build/sdk/resolveUtil.d.ts.map +0 -1
  55. package/build/sdk/resolveUtil.js +0 -1448
  56. package/build/sdk/resolveUtil.js.map +0 -1
  57. package/docs/types/ChangeEventPayload.html +0 -2
  58. package/docs/types/MsDataSdkModuleEvents.html +0 -2
  59. package/docs/types/MsDataSdkViewProps.html +0 -4
  60. package/docs/types/OnLoadEventPayload.html +0 -2
  61. package/docs/variables/DeviceConst.html +0 -1
  62. package/docs/variables/default.html +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveUtil.js","sourceRoot":"","sources":["../../src/sdk/resolveUtil.ts"],"names":[],"mappings":"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","sourcesContent":["import { DeviceConst, BleConst, DeviceKey } from './bleConst';\n\n// 字节操作工具类\nexport class ResolveUtil {\n // CRC 校验\n static crcValue(value: number[]): void {\n let crc = 0;\n for (let i = 0; i < value.length - 1; i++) {\n crc += value[i];\n }\n value[value.length - 1] = crc & 0xff;\n }\n\n private static hexByte2Int(b: number, count: number): number {\n return (b & 0xff) * Math.pow(256, count);\n }\n\n // BCD 码时间解析\n private static bcd2String(bytes: number): string {\n const a = (bytes & 0xf0) >> 4;\n const b = bytes & 0x0f;\n return `${a}${b}`;\n }\n\n // 字节数组转十六进制字符串\n static intList2String(bytes: number[]): string {\n return bytes.map(b => b.toString(16).padStart(2, '0').toUpperCase()).join(' ');\n }\n\n // 字节数组转十六进制字符串(小写)\n static intList3String(bytes: number[]): string {\n return bytes.map(b => b.toString(16).padStart(2, '0').toLowerCase()).join(' ');\n }\n static setMacSuccessful(): { [key: string]: any } {\n return {\n [DeviceKey.DataType]: BleConst.CMD_Set_Mac,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n }\n private static intBitToDouble(value: number): number {\n const buffer = new ArrayBuffer(8);//4\n const view = new DataView(buffer);\n view.setInt32(0, value, false); // big-endian\n return view.getFloat32(0, false);\n }\n // 设备时间解析\n static getDeviceTime(value: number[]): any {\n const date = `20${this.bcd2String(value[1])}-${this.bcd2String(value[2])}-${this.bcd2String(value[3])} ${this.bcd2String(value[4])}:${this.bcd2String(value[5])}:${this.bcd2String(value[6])}`;\n const gpsDate = `${this.bcd2String(value[9])}.${this.bcd2String(value[10])}.${this.bcd2String(value[11])}`;\n\n return {\n [DeviceKey.DataType]: BleConst.GetDeviceTime,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.DeviceTime]: date,\n [DeviceKey.GPSTime]: gpsDate\n }\n };\n }\n // int转ASCII\n private static int2Ascll(value: number): string {\n if (value < 0 || value > 255) {\n throw new Error(\"Value must be between 0 and 255\");\n }\n return String.fromCharCode(value);\n }\n // GPS 时间解析\n static getGpsTime(value: number[]): string {\n return `${this.bcd2String(value[9])}.${this.bcd2String(value[10])}.${this.bcd2String(value[11])}`;\n }\n\n // 用户信息解析\n static getUserInfo(value: number[]): any {\n const userInfo = new Array(6).fill(0);\n for (let i = 0; i < 5; i++) {\n userInfo[i] = this.hexByte2Int(value[i + 1], 0);\n }\n\n let userId = '';\n for (let i = 6; i < 12; i++) {\n if (value[i] === 0) continue;\n userId += String.fromCharCode(this.hexByte2Int(value[i], 0));\n }\n\n return {\n [DeviceKey.DataType]: BleConst.GetPersonalInfo,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.Gender]: userInfo[0],\n [DeviceKey.Age]: userInfo[1],\n [DeviceKey.Height]: userInfo[2],\n [DeviceKey.Weight]: userInfo[3],\n [DeviceKey.Stride]: userInfo[4],\n [DeviceKey.KUserDeviceId]: userId\n }\n };\n }\n\n // 设备信息解析\n static getDeviceInfo(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.GetDeviceInfo,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.DistanceUnit]: this.hexByte2Int(value[1], 0).toString(),\n [DeviceKey.TimeUnit]: this.hexByte2Int(value[2], 0).toString(),\n [DeviceKey.StatusOfTheRaisedHandOnscreen]: this.hexByte2Int(value[3], 0).toString(),\n [DeviceKey.TempUnit]: this.hexByte2Int(value[4], 0).toString(),\n [DeviceKey.NightMode]: this.hexByte2Int(value[5], 0).toString(),\n [DeviceKey.KBaseHeart]: this.hexByte2Int(value[9], 0).toString(),\n [DeviceKey.ScreenBrightness]: this.hexByte2Int(value[11], 0).toString(),\n [DeviceKey.Dialinterface]: this.hexByte2Int(value[12], 0).toString(),\n [DeviceKey.SocialDistancedwitch]: this.hexByte2Int(value[13], 0).toString(),\n [DeviceKey.ChineseOrEnglish]: this.hexByte2Int(value[14], 0).toString()\n }\n };\n }\n\n // 实时计步信息解析\n static getActivityData(value: number[]): any {\n let step = 0;\n let cal = 0;\n let distance = 0;\n let time = 0;\n let exerciseTime = 0;\n\n for (let i = 1; i < 5; i++) {\n step += this.hexByte2Int(value[i], i - 1);\n }\n\n for (let i = 5; i < 9; i++) {\n cal += this.hexByte2Int(value[i], i - 5);\n }\n\n for (let i = 9; i < 13; i++) {\n distance += this.hexByte2Int(value[i], i - 9);\n }\n\n for (let i = 13; i < 17; i++) {\n time += this.hexByte2Int(value[i], i - 13);\n }\n\n for (let i = 17; i < 21; i++) {\n exerciseTime += this.hexByte2Int(value[i], i - 17);\n }\n\n const heart = this.hexByte2Int(value[21], 0);\n let temp = 0;\n let spo2 = 0;\n\n if (value.length > 22) {\n temp = this.hexByte2Int(value[22], 0) + this.hexByte2Int(value[23], 1);\n if (value.length > 24) {\n spo2 = this.hexByte2Int(value[24], 0);\n }\n }\n\n return {\n [DeviceKey.DataType]: BleConst.RealTimeStep,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.Step]: step.toString(),\n [DeviceKey.Calories]: (cal / 100).toFixed(1),\n [DeviceKey.Distance]: (distance / 100).toFixed(1),\n [DeviceKey.ExerciseMinutes]: (time / 60).toString(),\n [DeviceKey.HeartRate]: heart.toString(),\n [DeviceKey.ActiveMinutes]: exerciseTime.toString(),\n [DeviceKey.TempData]: temp.toFixed(1),\n [DeviceKey.Blood_oxygen]: spo2.toString()\n }\n };\n }\n\n // 步数目标解析\n static getGoal(value: number[]): any {\n let goal = 0;\n let distance = 0;\n let calorie = 0;\n let sleepTime = 0;\n\n for (let i = 0; i < 4; i++) {\n goal += this.hexByte2Int(value[i + 1], i);\n }\n\n for (let i = 0; i <= 1; i++) {\n distance += this.hexByte2Int(value[i + 7], i);\n }\n\n for (let i = 0; i <= 1; i++) {\n calorie += this.hexByte2Int(value[i + 9], i);\n }\n\n for (let i = 0; i <= 1; i++) {\n sleepTime += this.hexByte2Int(value[i + 11], i);\n }\n\n return {\n [DeviceKey.DataType]: BleConst.GetStepGoal,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.StepGoal]: goal.toString(),\n [DeviceKey.DistanceGoal]: distance.toString(),\n [DeviceKey.CalorieGoal]: calorie.toString(),\n [DeviceKey.SleepTimeGoal]: sleepTime.toString()\n }\n };\n }\n\n // 设备电量解析\n static getDeviceBattery(value: number[]): any {\n const battery = this.hexByte2Int(value[1], 0);\n return {\n [DeviceKey.DataType]: BleConst.GetDeviceBatteryLevel,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.BatteryLevel]: battery.toString()\n }\n };\n }\n\n // 设备 MAC 地址解析\n static getDeviceAddress(value: number[]): any {\n if (value.length === 0) return {};\n\n const addressParts: string[] = [];\n for (let i = 1; i < 7; i++) {\n const mac = value[i].toString(16).padStart(2, '0');\n addressParts.push(mac);\n }\n\n const macAddress = addressParts.join(':');\n return {\n [DeviceKey.DataType]: BleConst.GetDeviceMacAddress,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.MacAddress]: macAddress\n }\n };\n }\n\n // 设备版本号解析\n static getDeviceVersion(value: number[]): any {\n if (value.length === 0) return {};\n\n const versionParts: string[] = [];\n for (let i = 1; i < 5; i++) {\n versionParts.push(value[i].toString(16));\n }\n\n const version = versionParts.join('.');\n return {\n [DeviceKey.DataType]: BleConst.GetDeviceVersion,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.DeviceVersion]: version\n }\n };\n }\n\n // 恢复出厂设置\n static Reset(): any {\n return {\n [DeviceKey.DataType]: BleConst.CMD_Reset,\n [DeviceKey.End]: true\n };\n }\n\n // MCU 软复位指令\n static MCUReset(): any {\n return {\n [DeviceKey.DataType]: BleConst.CMD_MCUReset,\n [DeviceKey.End]: true\n };\n }\n\n // 第三方提醒命令\n static Notify(): any {\n return {\n [DeviceKey.DataType]: BleConst.Notify,\n [DeviceKey.End]: true\n };\n }\n\n // 设备名称解析\n static getDeviceName(value: number[]): any {\n let name = \"\";\n for (let i = 1; i < 15; i++) {\n const charValue = this.hexByte2Int(value[i], 0);\n if (charValue === 0 || charValue > 127) continue;\n name += String.fromCharCode(charValue);\n }\n\n return {\n [DeviceKey.DataType]: BleConst.GetDeviceName,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.DeviceName]: name\n }\n };\n }\n // 自动测量心率时间段解析\n static getAutoHeart(value: number[]): any {\n const time = this.hexByte2Int(value[7], 0) + this.hexByte2Int(value[8], 1);\n return {\n [DeviceKey.DataType]: BleConst.GetAutomaticHRMonitoring,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.WorkMode]: this.hexByte2Int(value[1], 0).toString(),\n [DeviceKey.StartTime]: this.bcd2String(value[2]),\n [DeviceKey.KHeartStartMinter]: this.bcd2String(value[3]),\n [DeviceKey.EndTime]: this.bcd2String(value[4]),\n [DeviceKey.KHeartEndMinter]: this.bcd2String(value[5]),\n [DeviceKey.Weeks]: this.getByteString(value[6]),\n [DeviceKey.IntervalTime]: time.toString()\n }\n };\n }\n // 周解析工具\n static getWeekInt(ar: number[]): number {\n let week = 0;\n for (let i = 0; i < ar.length; i++) {\n if (ar[i] === 1) {\n week += Math.pow(2, i);\n }\n }\n return week;\n }\n\n // 字节转字符串\n static getByteString(b: number): string {\n const array: number[] = new Array(8).fill(0);\n const parts: string[] = [];\n\n for (let i = 0; i <= 6; i++) {\n array[i] = b & 1;\n b = b >> 1;\n parts.push(array[i].toString());\n }\n\n return parts.join('-');\n }\n\n // 字节数组解析\n static getByteArray(b: number): string {\n const array: number[] = new Array(8).fill(0);\n let result = '';\n\n for (let i = 0; i <= 7; i++) {\n array[i] = b & 1;\n b = b >> 1;\n result += array[i];\n }\n\n return result;\n }\n\n /**\n * 字节转整数(对应原 _hexByte2Int)\n * @param byte 字节值\n * @param shift 位移量(用于多字节拼接)\n */\n private static _hexByte2Int(byte: number, shift: number): number {\n return byte << (8 * shift);\n }\n\n /**\n * BCD编码转字符串(对应原 _bcd2String)\n * BCD编码:每个字节表示2位十进制数(如0x12 → \"12\")\n */\n private static _bcd2String(byte: number): string {\n const high = (byte >> 4) & 0x0F; // 高4位\n const low = byte & 0x0F; // 低4位\n return `${high}${low}`;\n }\n\n /**\n * 久坐提醒\n */\n static getActivityAlarm(value: number[]): object {\n const mapData = {\n [DeviceKey.StartTimeHour]: this._bcd2String(value[1]),\n [DeviceKey.StartTimeMin]: this._bcd2String(value[2]),\n [DeviceKey.EndTimeHour]: this._bcd2String(value[3]),\n [DeviceKey.EndTimeMin]: this._bcd2String(value[4]),\n [DeviceKey.Week]: this.getByteString(value[5]),\n [DeviceKey.IntervalTime]: this._hexByte2Int(value[6], 0).toString(),\n [DeviceKey.LeastSteps]: this._hexByte2Int(value[7], 0).toString(),\n [DeviceKey.OpenOrClose]: this._hexByte2Int(value[8], 0).toString()\n };\n\n return {\n [DeviceKey.DataType]: BleConst.GetSedentaryReminder,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: mapData\n };\n }\n\n\n /**\n * 总运动数据解析\n */\n static getTotalStepData(value: number[]): object {\n console.log('total:',value);\n const maps: any = {\n [DeviceKey.DataType]: BleConst.GetTotalActivityData,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n const count = 27;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n for (let i = 0; i < size; i++) {\n // 检查是否结束\n const flag = 1 + (i + 1) * count;\n if (flag < length && value[flag] === 0xff) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析日期\n const date = `20${this._bcd2String(value[2 + i * count])}.${this._bcd2String(value[3 + i * count])}.${this._bcd2String(value[4 + i * count])}`;\n\n // 解析步数\n let step = 0;\n for (let j = 0; j < 4; j++) {\n step += this._hexByte2Int(value[5 + j + i * count], j);\n }\n\n // 解析运动时间\n let time = 0;\n for (let j = 0; j < 4; j++) {\n time += this._hexByte2Int(value[9 + j + i * count], j);\n }\n\n // 解析距离\n let distance = 0;\n for (let j = 0; j < 4; j++) {\n distance += this._hexByte2Int(value[13 + j + i * count], j);\n }\n\n // 解析卡路里\n let cal = 0;\n for (let j = 0; j < 4; j++) {\n cal += this._hexByte2Int(value[17 + j + i * count], j);\n }\n\n // 解析目标值\n let goal = this._hexByte2Int(value[21 + i * count], 0) + this._hexByte2Int(value[22 + i * count], 1);\n\n // 解析活跃时间\n let exerciseTime = 0;\n for (let j = 0; j < 4; j++) {\n exerciseTime += this._hexByte2Int(value[count - 4 + j + i * count], j);\n }\n\n // 组装数据\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.Step]: step.toString(),\n [DeviceKey.ExerciseMinutes]: time.toString(),\n [DeviceKey.Calories]: (cal / 100).toFixed(1),\n [DeviceKey.Distance]: (distance / 100).toFixed(1),\n [DeviceKey.Goal]: goal.toString(),\n [DeviceKey.ActiveMinutes]: exerciseTime\n });\n }\n\n return maps;\n }\n\n /**\n * 详细运动数据解析\n */\n static getDetailData(value: number[]): object {\n const maps: any = {\n [DeviceKey.DataType]: BleConst.GetDetailActivityData,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 25;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n\n for (let i = 0; i < size; i++) {\n // 检查是否结束\n if (value[length - 1] === 0xff) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析日期时间\n const date = `20${this._bcd2String(value[3 + i * 25])}.${this._bcd2String(value[4 + i * 25])}.${this._bcd2String(value[5 + i * 25])} ${this._bcd2String(value[6 + i * 25])}:${this._bcd2String(value[7 + i * 25])}:${this._bcd2String(value[8 + i * 25])}`;\n\n // 解析步数\n let step = 0;\n for (let j = 0; j < 2; j++) {\n step += this._hexByte2Int(value[9 + j + i * 25], j);\n }\n\n // 解析卡路里\n let cal = 0;\n for (let j = 0; j < 2; j++) {\n cal += this._hexByte2Int(value[11 + j + i * 25], j);\n }\n\n // 解析距离\n let distance = 0;\n for (let j = 0; j < 2; j++) {\n distance += this._hexByte2Int(value[13 + j + i * 25], j);\n }\n\n // 解析步数数组\n const arraySteps: string[] = [];\n for (let j = 0; j < 10; j++) {\n arraySteps.push(this._hexByte2Int(value[15 + j + i * 25], 0).toString());\n }\n\n // 组装数据\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.KDetailMinterStep]: step.toString(),\n [DeviceKey.Calories]: (cal / 100).toFixed(2),\n [DeviceKey.Distance]: (distance / 100).toFixed(2),\n [DeviceKey.ArraySteps]: arraySteps.join(' ')\n });\n }\n\n return maps;\n }\n\n\n /**\n * 睡眠数据解析\n */\n static getSleepData(value: number[]): object {\n const length = value.length;\n const maps: any = {\n [DeviceKey.DataType]: BleConst.GetDetailSleepData,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n // 检查是否结束\n const end = value[value.length - 1] === 0xff && value[value.length - 2] === DeviceConst.CMD_Get_SleepData;\n if (end) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析130字节或132字节格式\n if (length === 130 || (end && length === 132)) {\n const date = `20${this._bcd2String(value[3])}-${this._bcd2String(value[4])}-${this._bcd2String(value[5])} ${this._bcd2String(value[6])}:${this._bcd2String(value[7])}:${this._bcd2String(value[8])}`;\n\n const sleepLength = this._hexByte2Int(value[9], 0);\n const arraySleep: string[] = [];\n for (let j = 0; j < sleepLength; j++) {\n arraySleep.push(this._hexByte2Int(value[10 + j], 0).toString());\n }\n\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.ArraySleep]: arraySleep.join(' '),\n [DeviceKey.sleepUnitLength]: '1'\n });\n } else {\n // 解析34字节格式\n const count = 34;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n\n for (let i = 0; i < size; i++) {\n const date = `20${this._bcd2String(value[3 + i * 34])}-${this._bcd2String(value[4 + i * 34])}-${this._bcd2String(value[5 + i * 34])} ${this._bcd2String(value[6 + i * 34])}:${this._bcd2String(value[7 + i * 34])}:${this._bcd2String(value[8 + i * 34])}`;\n\n const sleepLength = this._hexByte2Int(value[9 + i * 34], 0);\n const arraySleep: string[] = [];\n for (let j = 0; j < sleepLength; j++) {\n arraySleep.push(this._hexByte2Int(value[10 + j + i * 34], 0).toString());\n }\n\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.ArraySleep]: arraySleep.join(' '),\n [DeviceKey.sleepUnitLength]: '5'\n });\n }\n }\n\n return maps;\n }\n\n\n /**\n * 自动血氧数据解析\n */\n static getAutoBloodOxygen(value: number[]): object {\n const maps: any = {\n [DeviceKey.DataType]: BleConst.AutoBloodOxygen,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 10;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n\n for (let i = 0; i < size; i++) {\n // 检查是否结束\n if (value[length - 1] === 0xff) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析日期时间\n const date = `20${this._bcd2String(value[3 + i * count])}.${this._bcd2String(value[4 + i * count])}.${this._bcd2String(value[5 + i * count])} ${this._bcd2String(value[6 + i * count])}:${this._bcd2String(value[7 + i * count])}:${this._bcd2String(value[8 + i * count])}`;\n\n // 解析血氧值\n const bloodOxygen = this._hexByte2Int(value[9 + i * 10], 0).toString();\n\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.Blood_oxygen]: bloodOxygen\n });\n }\n\n return maps;\n }\n\n\n /**\n * 历史血氧数据解析(与自动血氧逻辑一致,复用代码)\n */\n static getBloodoxygen(value: number[]): object {\n const maps: any = {\n [DeviceKey.DataType]: BleConst.Blood_oxygen,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 10;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n\n for (let i = 0; i < size; i++) {\n // 检查是否结束\n if (value[length - 1] === 0xff) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析日期时间\n const date = `20${this._bcd2String(value[3 + i * count])}.${this._bcd2String(value[4 + i * count])}.${this._bcd2String(value[5 + i * count])} ${this._bcd2String(value[6 + i * count])}:${this._bcd2String(value[7 + i * count])}:${this._bcd2String(value[8 + i * count])}`;\n\n // 解析血氧值\n const bloodOxygen = this._hexByte2Int(value[9 + i * 10], 0).toString();\n\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.Blood_oxygen]: bloodOxygen\n });\n }\n\n return maps;\n }\n\n\n /**\n * 历史心率数据解析\n */\n static getHeartData(value: number[]): object {\n const maps: any = {\n [DeviceKey.DataType]: BleConst.GetDynamicHR,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 24;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n\n for (let i = 0; i < size; i++) {\n // 检查是否结束\n if (value[length - 1] === 0xff) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析日期时间\n const date = `20${this._bcd2String(value[3 + i * count])}.${this._bcd2String(value[4 + i * count])}.${this._bcd2String(value[5 + i * count])} ${this._bcd2String(value[6 + i * count])}:${this._bcd2String(value[7 + i * count])}:${this._bcd2String(value[8 + i * count])}`;\n\n // 解析心率数组\n const arrayHR: string[] = [];\n for (let j = 0; j < 15; j++) {\n arrayHR.push(this._hexByte2Int(value[9 + j + i * count], 0).toString());\n }\n\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.ArrayDynamicHR]: arrayHR.join(' ')\n });\n }\n\n return maps;\n }\n\n\n /**\n * 单次历史心率数据解析\n */\n static getOnceHeartData(value: number[]): object {\n const maps: any = {\n [DeviceKey.DataType]: BleConst.GetStaticHR,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 10;\n const length = value.length;\n const size = Math.floor(length / count);\n\n // 检查是否结束\n if (size === 0 || (size === 1 && value[1] === 0x99)) {\n maps[DeviceKey.End] = true;\n return maps;\n }\n\n for (let i = 0; i < size; i++) {\n if (value[length - 1] === 0xff) {\n maps[DeviceKey.End] = true;\n }\n\n // 解析日期时间\n const date = `20${this._bcd2String(value[3 + i * 10])}.${this._bcd2String(value[4 + i * 10])}.${this._bcd2String(value[5 + i * 10])} ${this._bcd2String(value[6 + i * 10])}:${this._bcd2String(value[7 + i * 10])}:${this._bcd2String(value[8 + i * 10])}`;\n\n // 解析心率值\n const heartRate = this._hexByte2Int(value[9 + i * 10], 0).toString();\n\n maps[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.StaticHR]: heartRate\n });\n }\n\n return maps;\n }\n // resolveUtil.tsx\n\n // HRV测试数据解析\n static getHrvTestData(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.GetHRVData,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 15;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n result[DeviceKey.End] = true;\n return result;\n }\n\n if (value[value.length - 1] === 0xff) {\n result[DeviceKey.End] = true;\n }\n\n for (let i = 0; i < size; i++) {\n const date = `20${this.bcd2String(value[3 + i * count])}.${this.bcd2String(value[4 + i * count])\n }.${this.bcd2String(value[5 + i * count])} ${this.bcd2String(value[6 + i * count])\n }:${this.bcd2String(value[7 + i * count])}:${this.bcd2String(value[8 + i * count])\n }`;\n\n const hrv = this.hexByte2Int(value[9 + i * count], 0).toString();\n const blood = this.hexByte2Int(value[10 + i * count], 0).toString();\n const heart = this.hexByte2Int(value[11 + i * count], 0).toString();\n const tired = this.hexByte2Int(value[12 + i * count], 0).toString();\n const moodValue = this.hexByte2Int(value[13 + i * count], 0).toString();\n const breathRate = this.hexByte2Int(value[14 + i * count], 0).toString();\n\n result[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.HRV]: hrv,\n [DeviceKey.VascularAging]: blood,\n [DeviceKey.HeartRate]: heart,\n [DeviceKey.Stress]: tired,\n [DeviceKey.highBP]: moodValue,\n [DeviceKey.lowBP]: breathRate\n });\n }\n\n return result;\n }\n\n // 闹钟数据解析\n static getClockData(value: number[]): any {\n console.log(\"getClockData:\", value);\n const result: any = {\n [DeviceKey.DataType]: BleConst.GetAlarmClock,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 41;\n const length = value.length;\n var isDele = false;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n result[DeviceKey.End] = true;\n return result;\n }\n if (value[1] == 0x99 && length == 16) {\n isDele = true;\n }\n result[DeviceKey.IsDeleteData] = isDele;\n for (let i = 0; i < size; i++) {\n const flag = 1 + (i + 1) * count;\n if (flag < length && value[flag] === 0xff) {\n result[DeviceKey.End] = true;\n }\n\n const id = this.hexByte2Int(value[4 + i * count], 0).toString();\n const enable = this.hexByte2Int(value[5 + i * count], 0).toString();\n const type = this.hexByte2Int(value[6 + i * count], 0).toString();\n const hour = this.bcd2String(value[7 + i * count]);\n const min = this.bcd2String(value[8 + i * count]);\n const week = this.hexByte2Int(value[9 + i * count], 0);\n const lengthS = this.hexByte2Int(value[10 + i * count], 0);\n\n let content = \"\";\n for (let j = 0; j < lengthS; j++) {\n const charValue = value[11 + j + i * count];\n if (charValue === 0) continue;\n content += this.int2Ascll(this.hexByte2Int(charValue, 0));\n }\n\n result[DeviceKey.Data].push({\n [DeviceKey.KAlarmId]: id,\n [DeviceKey.OpenOrClose]: enable,\n [DeviceKey.ClockType]: type,\n [DeviceKey.ClockTime]: hour,\n [DeviceKey.KAlarmMinter]: min,\n [DeviceKey.Week]: week,\n [DeviceKey.KAlarmContent]: content,\n [DeviceKey.KAlarmLength]: lengthS.toString()\n });\n }\n\n return result;\n }\n\n // 腋下温度数据解析\n static getTempDataer(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.GetAxillaryTemperatureDataWithMode,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 11;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0 || value[length - 1] === 0xff) {\n result[DeviceKey.End] = true;\n return result;\n }\n\n for (let i = 0; i < size; i++) {\n if (value[length - 1] === 0xff) {\n result[DeviceKey.End] = true;\n }\n\n const date = `20${this.bcd2String(value[3 + i * count])}.${this.bcd2String(value[4 + i * count])\n }.${this.bcd2String(value[5 + i * count])} ${this.bcd2String(value[6 + i * count])\n }:${this.bcd2String(value[7 + i * count])}:${this.bcd2String(value[8 + i * count])\n }`;\n\n const tempValue = this.hexByte2Int(value[9 + i * count], 0) +\n this.hexByte2Int(value[10 + i * count], 1);\n\n result[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.axillaryTemperature]: (tempValue * 0.1).toFixed(1)\n });\n }\n\n return result;\n }\n\n // 二维码相关功能\n static getQrCode(value: number[], flag: boolean): any {\n if (flag) {\n return {\n [DeviceKey.DataType]: BleConst.EnterQrCode,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n } else {\n if (value[1] === 0x80 || value[1] === 0x81) {\n return {\n [DeviceKey.DataType]: BleConst.QrCodeBandBack,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.Band]: value[1] === 0x81 ? \"1\" : \"0\"\n }\n };\n } else {\n return {\n [DeviceKey.DataType]: BleConst.ExitQrCode,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n }\n }\n }\n\n // 温度历史数据解析\n static getTempData(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.Temperature_history,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 11;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0 ||\n value[length - 1] === 0xff ||\n (size === 1 && value[1] === 0x99)) {\n result[DeviceKey.End] = true;\n return result;\n }\n\n for (let i = 0; i < size; i++) {\n if (value[length - 1] === 0xff) {\n result[DeviceKey.End] = true;\n }\n\n const date = `20${this.bcd2String(value[3 + i * count])}.${this.bcd2String(value[4 + i * count])\n }.${this.bcd2String(value[5 + i * count])} ${this.bcd2String(value[6 + i * count])\n }:${this.bcd2String(value[7 + i * count])}:${this.bcd2String(value[8 + i * count])\n }`;\n\n const tempValue = this.hexByte2Int(value[9 + i * count], 0) +\n this.hexByte2Int(value[10 + i * count], 1);\n\n result[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.temperature]: (tempValue * 0.1).toFixed(1)\n });\n }\n\n return result;\n }\n\n // 运动模式数据解析\n static getExerciseData(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.GetActivityModeData,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 25;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n result[DeviceKey.End] = true;\n return result;\n }\n\n for (let i = 0; i < size; i++) {\n const flag = 1 + (i + 1) * count;\n if (flag < length && i === size - 1 && value[flag] === 0xff) {\n result[DeviceKey.End] = true;\n }\n\n const date = `20${this.bcd2String(value[3 + i * count])}.${this.bcd2String(value[4 + i * count])\n }.${this.bcd2String(value[5 + i * count])} ${this.bcd2String(value[6 + i * count])\n }:${this.bcd2String(value[7 + i * count])}:${this.bcd2String(value[8 + i * count])\n }`;\n\n const mode = this.hexByte2Int(value[9 + i * count], 0).toString();\n const heartRate = this.hexByte2Int(value[10 + i * count], 0).toString();\n\n const periodTime = this.getData(2, 11 + i * count, value);\n const steps = this.getData(2, 13 + i * count, value);\n\n const speedMin = this.hexByte2Int(value[15 + i * count], 0);\n const speedS = this.hexByte2Int(value[16 + i * count], 0);\n\n const valueCal = new Array(4).fill(0);\n for (let j = 0; j < 4; j++) {\n valueCal[3 - j] = value[17 + j + i * count];\n }\n\n const valueDistance = new Array(4).fill(0);\n for (let j = 0; j < 4; j++) {\n valueDistance[3 - j] = value[21 + j + i * count];\n }\n\n const cal = this.getFloat(valueCal, 0);\n const distance = this.getFloat(valueDistance, 0);\n\n result[DeviceKey.Data].push({\n [DeviceKey.Date]: date,\n [DeviceKey.ActivityMode]: mode,\n [DeviceKey.HeartRate]: heartRate,\n [DeviceKey.ActiveMinutes]: periodTime.toString(),\n [DeviceKey.Step]: steps.toString(),\n [DeviceKey.Pace]: `${speedMin.toString(16)}'${speedS.toString(16)}`,\n [DeviceKey.Distance]: distance.toFixed(2),\n [DeviceKey.Calories]: cal.toFixed(1)\n });\n }\n\n return result;\n }\n\n // 活动运动数据解析\n static getActivityExerciseData(value: number[]): any {\n let steps = 0;\n let time = 0;\n\n const valueCal = new Array(4).fill(0);\n\n for (let i = 0; i < 4; i++) {\n steps += this.hexByte2Int(value[i + 2], i);\n valueCal[3 - i] = value[i + 6];\n time += this.hexByte2Int(value[i + 10], i);\n }\n\n const heartRate = this.hexByte2Int(value[1], 0);\n const kcal = this.getFloat(valueCal, 0);\n\n return {\n [DeviceKey.DataType]: BleConst.EnterActivityMode,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.HeartRate]: heartRate.toString(),\n [DeviceKey.Step]: steps.toString(),\n [DeviceKey.Calories]: kcal.toFixed(1),\n [DeviceKey.ActiveMinutes]: time.toString()\n }\n };\n }\n\n // 设置时间成功响应\n static setTimeSuccessful(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.SetDeviceTime,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.KPhoneDataLength]: this.hexByte2Int(value[1], 0).toString()\n }\n };\n }\n\n // 辅助方法:获取数据块\n private static getData(length: number, start: number, value: number[]): number {\n let data = 0;\n for (let j = 0; j < length; j++) {\n data += this.hexByte2Int(value[j + start], j);\n }\n return data;\n }\n // 字节转浮点\n private static getFloat(arr: number[], index: number): number {\n return this.intBitToDouble(this.getInt(arr, index));\n }\n\n private static getInt(arr: number[], index: number): number {\n return (\n ((arr[index] & 0xff) << 24) |\n ((arr[index + 1] & 0xff) << 16) |\n ((arr[index + 2] & 0xff) << 8) |\n (arr[index + 3] & 0xff)\n );\n }\n // 设置成功响应\n static setMethodSuccessful(dataType: string): any {\n return {\n [DeviceKey.DataType]: dataType,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n }\n\n // ECG数据解析\n static getEcgHistoryData(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.ECGdata,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: {}\n };\n\n const length = value.length;\n if (\n length === 3 ||\n (value[length - 3] === 0x71 &&\n value[length - 2] === 0xff &&\n value[length - 1] === 0xff)\n ) {\n result[DeviceKey.End] = true;\n return result;\n }\n\n const id = this.hexByte2Int(value[1], 0) + this.hexByte2Int(value[2], 1);\n let offset = 3;\n\n if (id === 0) {\n const date = `20${this.bcd2String(value[3])}-${this.bcd2String(value[4])\n }-${this.bcd2String(value[5])} ${this.bcd2String(value[6])\n }:${this.bcd2String(value[7])}:${this.bcd2String(value[8])\n }`;\n const hrv = this.hexByte2Int(value[11], 0).toString();\n const heart = this.hexByte2Int(value[12], 0).toString();\n const moodValue = this.hexByte2Int(value[13], 0).toString();\n\n result[DeviceKey.Data][DeviceKey.Date] = date;\n result[DeviceKey.Data][DeviceKey.HRV] = hrv;\n result[DeviceKey.Data][DeviceKey.HeartRate] = heart;\n result[DeviceKey.Data][DeviceKey.ECGMoodValue] = moodValue;\n\n offset = 27;\n }\n\n const tempValue = value.slice(offset, length);\n const ecgData = this.getEcgDataString(tempValue);\n result[DeviceKey.Data][DeviceKey.ECGValue] = ecgData;\n\n return result;\n }\n\n private static getEcgDataString(value: number[]): string {\n const points: string[] = [];\n const length = Math.floor(value.length / 2) - 1;\n\n for (let i = 0; i < length; i++) {\n let ecgValue = this.hexByte2Int(value[i * 2 + 1], 1) +\n this.hexByte2Int(value[i * 2 + 2], 0);\n\n if (ecgValue >= 32768) ecgValue -= 65536;\n points.push(ecgValue.toString());\n }\n\n return points.join(',');\n }\n // resolveUtil.tsx\n\n // ECG数据解析\n static ecgData(value: number[]): any {\n const index = this.hexByte2Int(value[1], 0);\n return {\n [DeviceKey.DataType]: BleConst.EcgppGstatus,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.EcgStatus]: index.toString()\n }\n };\n }\n\n // PPG数据解析\n static ppgData(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.EcgppGstatus,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.PPGValue]: value\n }\n };\n }\n\n // ECG结果解析\n static ecgResult(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.GetEcgPpgStatus,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n\n const resultValue = this.hexByte2Int(value[1], 0);\n if (resultValue === 3) {\n const date = `20${this.bcd2String(value[10])}.${this.bcd2String(value[11])\n }.${this.bcd2String(value[12])} ${this.bcd2String(value[13])\n }:${this.bcd2String(value[14])}:${this.bcd2String(value[15])\n }`;\n\n result[DeviceKey.Data] = {\n [DeviceKey.Date]: date,\n [DeviceKey.ECGHrvValue]: this.hexByte2Int(value[2], 0).toString(),\n [DeviceKey.ECGAvBlockValue]: this.hexByte2Int(value[3], 0).toString(),\n [DeviceKey.ECGHrValue]: this.hexByte2Int(value[4], 0).toString(),\n [DeviceKey.ECGStreesValue]: this.hexByte2Int(value[5], 0).toString(),\n [DeviceKey.ECGhighBpValue]: this.hexByte2Int(value[6], 0).toString(),\n [DeviceKey.ECGLowBpValue]: this.hexByte2Int(value[7], 0).toString(),\n [DeviceKey.ECGMoodValue]: this.hexByte2Int(value[8], 0).toString(),\n [DeviceKey.ECGBreathValue]: this.hexByte2Int(value[9], 0).toString()\n };\n }\n\n return result;\n }\n\n // 进入ECG模式\n static enterEcg(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.ENTERECG,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n }\n\n // 测量类型处理\n static measurementWithType(flag: boolean, value: number[]): any {\n if (flag) {\n switch (value[1]) {\n case 1: // HRV\n return {\n [DeviceKey.DataType]: BleConst.MeasurementHrvCallback,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.HRV]: this.hexByte2Int(value[4], 0)\n }\n };\n\n case 2: // 心率\n return {\n [DeviceKey.DataType]: BleConst.MeasurementHeartCallback,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.HeartRate]: this.hexByte2Int(value[2], 0)\n }\n };\n\n case 3: // 血氧\n return {\n [DeviceKey.DataType]: BleConst.MeasurementOxygenCallback,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.Blood_oxygen]: this.hexByte2Int(value[3], 0)\n }\n };\n\n case 4: // 体温\n const tempValue = this.hexByte2Int(value[8], 0) +\n this.hexByte2Int(value[9], 1);\n return {\n [DeviceKey.DataType]: BleConst.MeasurementTempCallback,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.temperature]: (tempValue * 0.1).toFixed(1)\n }\n };\n }\n } else {\n\n const callbacks: { [key: number]: string } = {\n 1: BleConst.StopMeasurementHrvCallback,\n 2: BleConst.StopMeasurementHeartCallback,\n 3: BleConst.StopMeasurementOxygenCallback,\n 4: BleConst.StopMeasurementTempCallback\n };\n if (callbacks[value[1]]) {\n return this.setMethodSuccessful(callbacks[value[1]]);\n }\n }\n\n return {};\n }\n\n // 手环表盘设置\n static braceletdial(isruning: boolean, value: number[]): any {\n if (isruning) {\n return {\n [DeviceKey.DataType]: BleConst.Braceletdial,\n [DeviceKey.End]: true\n };\n } else {\n return {\n [DeviceKey.DataType]: BleConst.Braceletdialok,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n index: value[1].toString()\n }\n };\n }\n }\n\n // 获取运动模式\n static getSportMode(value: number[]): any {\n const length = this.hexByte2Int(value[1], 0);\n const types: string[] = [];\n\n for (let i = 0; i < length; i++) {\n types.push(this.hexByte2Int(value[i + 2], 0).toString());\n }\n\n return {\n [DeviceKey.DataType]: BleConst.GetSportMode,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: types.join(\",\")\n };\n }\n\n // GPS控制命令解析\n static gPSControlCommand(value: number[]): any {\n const date = `20${this.bcd2String(value[1])}-${this.bcd2String(value[2])\n }-${this.bcd2String(value[3])} ${this.bcd2String(value[4])\n }:${this.bcd2String(value[5])}:${this.bcd2String(value[6])\n }`;\n\n const valueLatitude = new Array(4).fill(0);\n const valueLongitude = new Array(4).fill(0);\n\n for (let j = 0; j < 4; j++) {\n valueLatitude[3 - j] = value[9 + j];\n valueLongitude[3 - j] = value[14 + j];\n }\n\n const latitude = this.getFloat(valueLatitude, 0).toString();\n const longitude = this.getFloat(valueLongitude, 0).toString();\n const count = this.hexByte2Int(value[18], 0);\n\n return {\n [DeviceKey.DataType]: BleConst.GPSControlCommand,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.KActivityLocationTime]: date,\n [DeviceKey.KActivityLocationLatitude]: latitude,\n [DeviceKey.KActivityLocationLongitude]: longitude,\n [DeviceKey.KActivityLocationCount]: count.toString()\n }\n };\n }\n\n // 设置社交距离\n static setSocial(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.SocialdistanceGetting,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n scanInterval: this.hexByte2Int(value[2], 0).toString(),\n scanTime: this.hexByte2Int(value[3], 0).toString(),\n signalStrength: value[4].toString()\n }\n };\n }\n\n // ECG质量数据\n static eCGQuality(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.EcgppG,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n heartValue: this.hexByte2Int(value[1], 0).toString(),\n hrvValue: this.hexByte2Int(value[2], 0).toString(),\n Quality: this.hexByte2Int(value[3], 0).toString()\n }\n };\n }\n\n // 进入照片模式返回\n static enterPhotoModeback(value: number[]): any {\n let type = \"\";\n\n switch (value[1]) {\n case 1:\n type = value[2] === 0 ? \"0\" : \"1\";\n break;\n case 2:\n type = \"2\";\n break;\n case 3:\n switch (value[2]) {\n case 1: type = \"3\"; break;\n case 2: type = \"4\"; break;\n case 3: type = \"5\"; break;\n case 4: type = \"6\"; break;\n case 5: type = \"7\"; break;\n }\n break;\n case 4:\n type = \"8\";\n break;\n }\n\n return {\n [DeviceKey.DataType]: BleConst.DeviceSendDataToAPP,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n type\n }\n };\n }\n\n // 设置新设备信息\n static setNewDeviceInfo(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.SetNewDeviceInfo,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {}\n };\n }\n\n // 获取新设备信息\n static getNewDeviceInfo(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.GetNewDeviceInfo,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n KEcg: this.hexByte2Int(value[1], 0).toString()\n }\n };\n }\n\n // 更新闹钟成功\n static updateClockSuccessful(value: number[]): any {\n console.log('updateClockSuccessful:', value);\n return {\n [DeviceKey.DataType]: BleConst.SetAlarmClockWithAllClock,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.KClockLast]: this.hexByte2Int(value[value.length - 1], 0).toString()\n }\n };\n }\n\n // 设置血糖状态\n static setBoolSugarStatus(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.BoolsugarStatus,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.EcgStatus]: this.hexByte2Int(value[2], 0)\n }\n };\n }\n\n // 设置血糖值\n static setBoolSugarValue(value: number[]): any {\n const tempValue = value.slice(3);\n const datas: number[] = [];\n\n for (let i = 0; i < Math.floor(tempValue.length / 3); i++) {\n const val = this.hexByte2Int(tempValue[3 * i], 2) +\n this.hexByte2Int(tempValue[3 * i + 1], 1) +\n this.hexByte2Int(tempValue[3 * i + 2], 0);\n datas.push(val);\n }\n\n return {\n [DeviceKey.DataType]: BleConst.BoolsugarValue,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n timestamp: Math.floor(Date.now() / 1000),\n ppg: datas\n }\n };\n }\n\n // 设置方法错误\n static setMethodError(dataType: string): any {\n return {\n [DeviceKey.DataType]: dataType,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: {}\n };\n }\n\n // 读取怀孕周期数据\n static readPregnancyCycle(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.GetPregnancyCycle,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.Date]: `20${this.bcd2String(value[3])}-${this.bcd2String(value[4])\n }-${this.bcd2String(value[5])}`,\n [DeviceKey.Week]: this.hexByte2Int(value[1], 0),\n [DeviceKey.DayOfWeek]: this.hexByte2Int(value[2], 0)\n }\n };\n }\n // 女性健康数据解析\n static readWomenHealth(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.GetWomenHealth,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.Date]: `${this.bcd2String(value[1])}-${this.bcd2String(value[2])}`,\n [DeviceKey.WomenHealthPeriod]: this.hexByte2Int(value[3], 0),\n [DeviceKey.WomenHealthLength]: this.hexByte2Int(value[4], 0)\n }\n };\n }\n\n // 温度校正值解析\n static getTemperatureCorrectionValue(value: number[]): any {\n const tempValue = [value[3], value[2]];\n const temperatureCorrectionValue = this.byteArrayToInt(tempValue);\n\n return {\n [DeviceKey.DataType]: BleConst.CMD_Set_TemperatureCorrection,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.TemperatureCorrectionValue]: temperatureCorrectionValue.toString()\n }\n };\n }\n\n private static byteArrayToInt(arr: number[]): number {\n return ((arr[0] << 8) & 0xff00) | (arr[1] & 0xff);\n }\n // resolveUtil.ts\n\n // 获取历史GPS数据\n static getHistoryGpsData(value: number[]): any {\n const list: any[] = [];\n const result: any = {\n [DeviceKey.DataType]: BleConst.Gps,\n [DeviceKey.End]: false\n };\n\n const count = 59;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n return result;\n }\n\n // 检查是否结束\n if (value[value.length - 1] === 0xff && value[value.length - 2] === 0x5a) {\n result[DeviceKey.End] = true;\n }\n\n for (let i = 0; i < size; i++) {\n const hashMap: any = {};\n const date = `20${this.bcd2String(value[3 + i * count])}.${this.bcd2String(value[4 + i * count])\n }.${this.bcd2String(value[5 + i * count])} ${this.bcd2String(value[6 + i * count])\n }:${this.bcd2String(value[7 + i * count])}:${this.bcd2String(value[8 + i * count])\n }`;\n\n const latitudeParts: string[] = [];\n const longitudeParts: string[] = [];\n\n for (let k = 0; k < 6; k++) {\n const valueLatitude = new Array(4).fill(0);\n const valueLongitude = new Array(4).fill(0);\n\n for (let j = 0; j < 4; j++) {\n valueLatitude[3 - j] = value[9 + j + i * count + k * 8];\n valueLongitude[3 - j] = value[13 + j + i * count + k * 8];\n }\n\n const latitude = this.getFloat(valueLatitude, 0).toString();\n const longitude = this.getFloat(valueLongitude, 0).toString();\n\n latitudeParts.push(latitude);\n longitudeParts.push(longitude);\n }\n\n hashMap[DeviceKey.Date] = date.length === 17 ? date : \"2019.01.01 00:00:00\";\n hashMap[DeviceKey.Latitude] = latitudeParts.join(\",\");\n hashMap[DeviceKey.Longitude] = longitudeParts.join(\",\");\n\n list.push(hashMap);\n }\n\n result[DeviceKey.Data] = list;\n return result;\n }\n\n // PPI测试数据解析\n static getPPITestData(value: number[]): any {\n const result: any = {\n [DeviceKey.DataType]: BleConst.GetPPIData,\n [DeviceKey.End]: false,\n [DeviceKey.Data]: []\n };\n\n const count = 123;\n const length = value.length;\n const size = Math.floor(length / count);\n\n if (size === 0) {\n result[DeviceKey.End] = true;\n return result;\n }\n\n if (value[value.length - 1] === 0xff) {\n result[DeviceKey.End] = true;\n }\n\n const arraySize = 56;\n\n for (let i = 0; i < size; i++) {\n const hashMap: any = {};\n\n // 数据编号\n const numList = new Array(2).fill(0);\n for (let k = 0; k < 2; k++) {\n numList[1 - k] = value[1 + k + i * count];\n }\n\n const numCode = this.getInt(numList, 0);\n const date = `20${this.bcd2String(value[3 + i * count])}.${this.bcd2String(value[4 + i * count])\n }.${this.bcd2String(value[5 + i * count])} ${this.bcd2String(value[6 + i * count])\n }:${this.bcd2String(value[7 + i * count])}:${this.bcd2String(value[8 + i * count])\n }`;\n\n // 数据条数\n const totalId = this.hexByte2Int(value[9 + i * count], 0);\n const ID = this.hexByte2Int(value[10 + i * count], 0).toString();\n\n const startFrame = 11;\n const ppiList: number[] = [];\n\n for (let j = 0; j < arraySize; j++) {\n const tempFrame = startFrame + j * 2;\n const valueCal = new Array(2).fill(0);\n\n for (let n = 0; n < 2; n++) {\n valueCal[1 - n] = value[tempFrame + n + i * count];\n }\n\n const PII = this.getFloat(valueCal, 0);\n\n if (PII === 0.0) {\n break;\n }\n\n ppiList.push(PII);\n }\n\n hashMap[DeviceKey.TOTAL_ID] = totalId.toString();\n hashMap[DeviceKey.PPI_ID] = ID;\n hashMap[DeviceKey.DeviceTime] = date;\n hashMap[DeviceKey.PPI_LIST] = ppiList;\n hashMap[DeviceKey.PPI_NUM] = numCode;\n\n result[DeviceKey.Data].push(hashMap);\n }\n\n return result;\n }\n\n // 获取HRV测量时间数据\n static getHrvTimeData(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.GetHrvTimeValue,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.HRV_TIME_MODE]: this.hexByte2Int(value[1], 0),\n [DeviceKey.HRV_TIME_Value]: this.hexByte2Int(value[2], 0)\n }\n };\n }\n\n // 断开蓝牙连接\n static closeDevices(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.CloseDevices,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.RESULT]: true\n }\n };\n }\n\n // 脱手检测状态上报\n static getOffCheckStatus(value: number[]): any {\n return {\n [DeviceKey.DataType]: BleConst.GetOffCheckStatus,\n [DeviceKey.End]: true,\n [DeviceKey.Data]: {\n [DeviceKey.GET_OFF_TAG]: this.hexByte2Int(value[1], 0),\n [DeviceKey.GET_OFF_STATE]: this.hexByte2Int(value[2], 0)\n }\n };\n }\n};"]}
@@ -1,2 +0,0 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>ChangeEventPayload | @moshenguo/ms-data-sdk - v0.1.2</title><meta name="description" content="Documentation for @moshenguo/ms-data-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@moshenguo/ms-data-sdk - v0.1.2</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">ChangeEventPayload</a></li></ul><h1>Type Alias ChangeEventPayload</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">type</span> <span class="tsd-kind-type-alias">ChangeEventPayload</span> <span class="tsd-signature-symbol">=</span> <span class="tsd-signature-symbol">{</span><br/>    <a class="tsd-kind-property" href="#value">value</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L11">MsDataSdk.types.ts:11</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#value" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>value</span></a>
2
- </div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="value"><span>value</span><a href="#value" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">value</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L12">MsDataSdk.types.ts:12</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#value"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>value</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@moshenguo/ms-data-sdk - v0.1.2</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -1,2 +0,0 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>MsDataSdkModuleEvents | @moshenguo/ms-data-sdk - v0.1.2</title><meta name="description" content="Documentation for @moshenguo/ms-data-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@moshenguo/ms-data-sdk - v0.1.2</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">MsDataSdkModuleEvents</a></li></ul><h1>Type Alias MsDataSdkModuleEvents</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">type</span> <span class="tsd-kind-type-alias">MsDataSdkModuleEvents</span> <span class="tsd-signature-symbol">=</span> <span class="tsd-signature-symbol">{</span><br/>    <a class="tsd-kind-property" href="#onchange">onChange</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">params</span><span class="tsd-signature-symbol">:</span> <a href="ChangeEventPayload.html" class="tsd-signature-type tsd-kind-type-alias">ChangeEventPayload</a><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L7">MsDataSdk.types.ts:7</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#onchange" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>on<wbr/>Change</span></a>
2
- </div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="onchange"><span>on<wbr/>Change</span><a href="#onchange" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">onChange</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">params</span><span class="tsd-signature-symbol">:</span> <a href="ChangeEventPayload.html" class="tsd-signature-type tsd-kind-type-alias">ChangeEventPayload</a><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L8">MsDataSdk.types.ts:8</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#onchange"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>on<wbr/>Change</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@moshenguo/ms-data-sdk - v0.1.2</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -1,4 +0,0 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>MsDataSdkViewProps | @moshenguo/ms-data-sdk - v0.1.2</title><meta name="description" content="Documentation for @moshenguo/ms-data-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@moshenguo/ms-data-sdk - v0.1.2</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">MsDataSdkViewProps</a></li></ul><h1>Type Alias MsDataSdkViewProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">type</span> <span class="tsd-kind-type-alias">MsDataSdkViewProps</span> <span class="tsd-signature-symbol">=</span> <span class="tsd-signature-symbol">{</span><br/>    <a class="tsd-kind-property" href="#onload">onLoad</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">event</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">nativeEvent</span><span class="tsd-signature-symbol">:</span> <a href="OnLoadEventPayload.html" class="tsd-signature-type tsd-kind-type-alias">OnLoadEventPayload</a> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">;</span><br/>    <a class="tsd-kind-property" href="#style">style</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">StyleProp</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">ViewStyle</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">;</span><br/>    <a class="tsd-kind-property" href="#url">url</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L15">MsDataSdk.types.ts:15</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#onload" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>on<wbr/>Load</span></a>
2
- <a href="#style" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>style?</span></a>
3
- <a href="#url" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a>
4
- </div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="onload"><span>on<wbr/>Load</span><a href="#onload" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">onLoad</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">event</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">nativeEvent</span><span class="tsd-signature-symbol">:</span> <a href="OnLoadEventPayload.html" class="tsd-signature-type tsd-kind-type-alias">OnLoadEventPayload</a> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L17">MsDataSdk.types.ts:17</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="style"><code class="tsd-tag">Optional</code><span>style</span><a href="#style" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">style</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">StyleProp</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">ViewStyle</span><span class="tsd-signature-symbol">&gt;</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L18">MsDataSdk.types.ts:18</a></li></ul></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="url"><span>url</span><a href="#url" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">url</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L16">MsDataSdk.types.ts:16</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#onload"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>on<wbr/>Load</span></a><a href="#style"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>style</span></a><a href="#url"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@moshenguo/ms-data-sdk - v0.1.2</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -1,2 +0,0 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>OnLoadEventPayload | @moshenguo/ms-data-sdk - v0.1.2</title><meta name="description" content="Documentation for @moshenguo/ms-data-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@moshenguo/ms-data-sdk - v0.1.2</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">OnLoadEventPayload</a></li></ul><h1>Type Alias OnLoadEventPayload</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">type</span> <span class="tsd-kind-type-alias">OnLoadEventPayload</span> <span class="tsd-signature-symbol">=</span> <span class="tsd-signature-symbol">{</span><br/>    <a class="tsd-kind-property" href="#url">url</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L3">MsDataSdk.types.ts:3</a></li></ul></aside><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#url" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a>
2
- </div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="url"><span>url</span><a href="#url" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">url</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdk.types.ts#L4">MsDataSdk.types.ts:4</a></li></ul></aside></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#url"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>url</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@moshenguo/ms-data-sdk - v0.1.2</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -1 +0,0 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>DeviceConst | @moshenguo/ms-data-sdk - v0.1.2</title><meta name="description" content="Documentation for @moshenguo/ms-data-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@moshenguo/ms-data-sdk - v0.1.2</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">DeviceConst</a></li></ul><h1>Variable DeviceConst<code class="tsd-tag">Const</code></h1></div><div class="tsd-signature"><span class="tsd-kind-variable">DeviceConst</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span><br/>    <span class="tsd-kind-property">BloodsugarWithMode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Braceletdial</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Clear_Bracelet_data</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_AUTO_CHECK_STATUS</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_CLOSE_DEVICE</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_ECGDATA</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_ECGQuality</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Enable_Activity</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_ActivityAlarm</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Address</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Auto_Blood_oxygen</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_AutoHeart</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_BatteryLevel</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Blood_oxygen</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_GET_BLOODSUGAR</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_GET_BLOODSUGAR_DATA</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Clock</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_DetailData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_DeviceInfo</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Goal</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_GPSDATA</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_HeartData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_HrvTestData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_NewDeviceInfo</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_OnceHeartData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_PPITestData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_SleepData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_SPORTData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_GET_TIME</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_TotalData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_GET_USERINFO</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_Version</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Get_WorkOutReminder</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_heart_package</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_HeartPackageFromDevice</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Mcu_Reset</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Notify</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_PPGGDATA</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_QrCode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Reset</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_ActivityAlarm</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_AutoHeart</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_Clock</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_DeviceID</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_DeviceInfo</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_Goal</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_MOT_SIGN</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_Name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_NewDeviceInfo</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_SET_SOCIAL</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_TemperatureCorrection</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_SET_TIME</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Set_UseInfo</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_SETTING_HRV_TIME</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Start_EXERCISE</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">CMD_Start_Ota</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">ecgandppg</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Enter_photo_mode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Enter_photo_modeback</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Exit_photo_mode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">GetAxillaryTemperatureDataWithMode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">GetEcgPpgStatus</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">GetEcgSaveData</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">GetSportMode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">GPSControlCommand</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">LanguageSwitching</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">MeasurementWithType</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">PregnancyCycle</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Sos</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">SportMode</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Temperature_history</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">Weather</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/>    <span class="tsd-kind-property">WomenHealth</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol"> = ...</span></div><div class="tsd-type-declaration"><h4>Type Declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5 id="bloodsugarwithmode"><span class="tsd-kind-property">BloodsugarWithMode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="braceletdial"><span class="tsd-kind-property">Braceletdial</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="clear_bracelet_data"><span class="tsd-kind-property">Clear_Bracelet_data</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_auto_check_status"><span class="tsd-kind-property">CMD_AUTO_CHECK_STATUS</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_close_device"><span class="tsd-kind-property">CMD_CLOSE_DEVICE</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_ecgdata"><span class="tsd-kind-property">CMD_ECGDATA</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_ecgquality"><span class="tsd-kind-property">CMD_ECGQuality</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_enable_activity"><span class="tsd-kind-property">CMD_Enable_Activity</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_activityalarm"><span class="tsd-kind-property">CMD_Get_ActivityAlarm</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_address"><span class="tsd-kind-property">CMD_Get_Address</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_auto_blood_oxygen"><span class="tsd-kind-property">CMD_Get_Auto_Blood_oxygen</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_autoheart"><span class="tsd-kind-property">CMD_Get_AutoHeart</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_batterylevel"><span class="tsd-kind-property">CMD_Get_BatteryLevel</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_blood_oxygen"><span class="tsd-kind-property">CMD_Get_Blood_oxygen</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_bloodsugar"><span class="tsd-kind-property">CMD_GET_BLOODSUGAR</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_bloodsugar_data"><span class="tsd-kind-property">CMD_GET_BLOODSUGAR_DATA</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_clock"><span class="tsd-kind-property">CMD_Get_Clock</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_detaildata"><span class="tsd-kind-property">CMD_Get_DetailData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_deviceinfo"><span class="tsd-kind-property">CMD_Get_DeviceInfo</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_goal"><span class="tsd-kind-property">CMD_Get_Goal</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_gpsdata"><span class="tsd-kind-property">CMD_Get_GPSDATA</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_heartdata"><span class="tsd-kind-property">CMD_Get_HeartData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_hrvtestdata"><span class="tsd-kind-property">CMD_Get_HrvTestData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_name"><span class="tsd-kind-property">CMD_Get_Name</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_newdeviceinfo"><span class="tsd-kind-property">CMD_Get_NewDeviceInfo</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_onceheartdata"><span class="tsd-kind-property">CMD_Get_OnceHeartData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_ppitestdata"><span class="tsd-kind-property">CMD_Get_PPITestData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_sleepdata"><span class="tsd-kind-property">CMD_Get_SleepData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_sportdata"><span class="tsd-kind-property">CMD_Get_SPORTData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_time"><span class="tsd-kind-property">CMD_GET_TIME</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_totaldata"><span class="tsd-kind-property">CMD_Get_TotalData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_userinfo"><span class="tsd-kind-property">CMD_GET_USERINFO</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_version"><span class="tsd-kind-property">CMD_Get_Version</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_get_workoutreminder"><span class="tsd-kind-property">CMD_Get_WorkOutReminder</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_heart_package"><span class="tsd-kind-property">CMD_heart_package</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_heartpackagefromdevice"><span class="tsd-kind-property">CMD_HeartPackageFromDevice</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_mcu_reset"><span class="tsd-kind-property">CMD_Mcu_Reset</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_notify"><span class="tsd-kind-property">CMD_Notify</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_ppggdata"><span class="tsd-kind-property">CMD_PPGGDATA</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_qrcode"><span class="tsd-kind-property">CMD_QrCode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_reset"><span class="tsd-kind-property">CMD_Reset</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_activityalarm"><span class="tsd-kind-property">CMD_Set_ActivityAlarm</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_autoheart"><span class="tsd-kind-property">CMD_Set_AutoHeart</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_clock"><span class="tsd-kind-property">CMD_Set_Clock</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_deviceid"><span class="tsd-kind-property">CMD_Set_DeviceID</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_deviceinfo"><span class="tsd-kind-property">CMD_Set_DeviceInfo</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_goal"><span class="tsd-kind-property">CMD_Set_Goal</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_mot_sign"><span class="tsd-kind-property">CMD_Set_MOT_SIGN</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_name"><span class="tsd-kind-property">CMD_Set_Name</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_newdeviceinfo"><span class="tsd-kind-property">CMD_Set_NewDeviceInfo</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_social"><span class="tsd-kind-property">CMD_SET_SOCIAL</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_temperaturecorrection"><span class="tsd-kind-property">CMD_Set_TemperatureCorrection</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_time"><span class="tsd-kind-property">CMD_SET_TIME</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_set_useinfo"><span class="tsd-kind-property">CMD_Set_UseInfo</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_setting_hrv_time"><span class="tsd-kind-property">CMD_SETTING_HRV_TIME</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_start_exercise"><span class="tsd-kind-property">CMD_Start_EXERCISE</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="cmd_start_ota"><span class="tsd-kind-property">CMD_Start_Ota</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="ecgandppg"><span class="tsd-kind-property">ecgandppg</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="enter_photo_mode"><span class="tsd-kind-property">Enter_photo_mode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="enter_photo_modeback"><span class="tsd-kind-property">Enter_photo_modeback</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="exit_photo_mode"><span class="tsd-kind-property">Exit_photo_mode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="getaxillarytemperaturedatawithmode"><span class="tsd-kind-property">GetAxillaryTemperatureDataWithMode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="getecgppgstatus"><span class="tsd-kind-property">GetEcgPpgStatus</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="getecgsavedata"><span class="tsd-kind-property">GetEcgSaveData</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="getsportmode"><span class="tsd-kind-property">GetSportMode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="gpscontrolcommand"><span class="tsd-kind-property">GPSControlCommand</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="languageswitching"><span class="tsd-kind-property">LanguageSwitching</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="measurementwithtype"><span class="tsd-kind-property">MeasurementWithType</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="pregnancycycle"><span class="tsd-kind-property">PregnancyCycle</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="sos"><span class="tsd-kind-property">Sos</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="sportmode"><span class="tsd-kind-property">SportMode</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="temperature_history"><span class="tsd-kind-property">Temperature_history</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="weather"><span class="tsd-kind-property">Weather</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li><li class="tsd-parameter"><h5 id="womenhealth"><span class="tsd-kind-property">WomenHealth</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></h5></li></ul></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/sdk/bleConst.ts#L2">sdk/bleConst.ts:2</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@moshenguo/ms-data-sdk - v0.1.2</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
@@ -1 +0,0 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>default | @moshenguo/ms-data-sdk - v0.1.2</title><meta name="description" content="Documentation for @moshenguo/ms-data-sdk"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@moshenguo/ms-data-sdk - v0.1.2</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">default</a></li></ul><h1>Variable default</h1></div><div class="tsd-signature"><span class="tsd-kind-variable">default</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">MsDataSdkModule</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/MoShenGuo/ms-data-sdk/blob/8b797cbbbc86bb9cee4ebbae8d3793f7a1f786da/src/MsDataSdkModule.ts#L13">MsDataSdkModule.ts:13</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">@moshenguo/ms-data-sdk - v0.1.2</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>