trackswap 0.0.25 → 0.0.27
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.
- package/dist/FIT/encoderCourse.d.ts +37 -0
- package/dist/FIT/encoderWorkout.d.ts +41 -0
- package/dist/FIT/index.d.ts +1 -0
- package/dist/FIT/types/checksum_type.d.ts +4 -0
- package/dist/FIT/types/date_time_type.d.ts +3 -0
- package/dist/FIT/types/file_flags_type.d.ts +5 -0
- package/dist/FIT/types/local_date_time_type.d.ts +3 -0
- package/dist/FIT/types/mesg_count_type.d.ts +5 -0
- package/dist/FIT/types/mesg_num.d.ts +76 -56
- package/dist/FIT/types/message_index_type.d.ts +4558 -0
- package/dist/TrackSwap.d.ts +6 -1
- package/dist/activity/base.d.ts +62 -0
- package/dist/activity/converters.d.ts +36 -0
- package/dist/activity/encoders.d.ts +32 -0
- package/dist/activity/index.d.ts +17 -0
- package/dist/activity/metrics/MetricsCalculator.d.ts +18 -0
- package/dist/activity/metrics/index.d.ts +1 -0
- package/dist/activity/processor.d.ts +19 -0
- package/dist/index.cjs +26 -26
- package/dist/index.d.ts +1 -1
- package/dist/index.js +26 -26
- package/package.json +8 -6
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { CoursePoint as CoursePointType } from "./types/course_point.js";
|
|
2
|
+
import { MesgNum } from "./types/mesg_num.js";
|
|
3
|
+
import { Sport, SubSport } from "./types/message_index_type.js";
|
|
4
|
+
export interface CourseRecordPoint {
|
|
5
|
+
timestamp: Date | number;
|
|
6
|
+
latitude: number;
|
|
7
|
+
longitude: number;
|
|
8
|
+
distance?: number;
|
|
9
|
+
altitude?: number;
|
|
10
|
+
speed?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface CourseCuePoint {
|
|
13
|
+
timestamp: Date | number;
|
|
14
|
+
latitude: number;
|
|
15
|
+
longitude: number;
|
|
16
|
+
type?: CoursePointType;
|
|
17
|
+
name?: string;
|
|
18
|
+
distance?: number;
|
|
19
|
+
favorite?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface CoursePlan {
|
|
22
|
+
name: string;
|
|
23
|
+
sport?: Sport;
|
|
24
|
+
subSport?: SubSport;
|
|
25
|
+
records: CourseRecordPoint[];
|
|
26
|
+
coursePoints?: CourseCuePoint[];
|
|
27
|
+
manufacturer?: string | number;
|
|
28
|
+
product?: number;
|
|
29
|
+
serialNumber?: number;
|
|
30
|
+
timeCreated?: Date | number;
|
|
31
|
+
}
|
|
32
|
+
export interface FitMesg {
|
|
33
|
+
mesgNum: MesgNum;
|
|
34
|
+
data: Record<string, unknown>;
|
|
35
|
+
}
|
|
36
|
+
export declare function buildCourseMesgs(plan: CoursePlan): FitMesg[];
|
|
37
|
+
export declare function encodeCourse(plan: CoursePlan): Uint8Array;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { MesgNum } from "./types/mesg_num.js";
|
|
2
|
+
import { Intensity, Sport, SubSport } from "./types/message_index_type.js";
|
|
3
|
+
export type WorkoutDuration = {
|
|
4
|
+
kind: "time";
|
|
5
|
+
seconds: number;
|
|
6
|
+
} | {
|
|
7
|
+
kind: "distance";
|
|
8
|
+
meters: number;
|
|
9
|
+
} | {
|
|
10
|
+
kind: "calories";
|
|
11
|
+
kcal: number;
|
|
12
|
+
} | {
|
|
13
|
+
kind: "open";
|
|
14
|
+
};
|
|
15
|
+
export type WorkoutTarget = {
|
|
16
|
+
kind: "open";
|
|
17
|
+
};
|
|
18
|
+
export interface WorkoutStep {
|
|
19
|
+
name?: string;
|
|
20
|
+
intensity?: Intensity;
|
|
21
|
+
duration: WorkoutDuration;
|
|
22
|
+
target?: WorkoutTarget;
|
|
23
|
+
}
|
|
24
|
+
export interface WorkoutPlan {
|
|
25
|
+
name: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
sport: Sport;
|
|
28
|
+
subSport?: SubSport;
|
|
29
|
+
steps: WorkoutStep[];
|
|
30
|
+
manufacturer?: string | number;
|
|
31
|
+
product?: number;
|
|
32
|
+
serialNumber?: number;
|
|
33
|
+
messageIndex?: number;
|
|
34
|
+
timeCreated?: Date | number;
|
|
35
|
+
}
|
|
36
|
+
export interface FitMesg {
|
|
37
|
+
mesgNum: MesgNum;
|
|
38
|
+
data: Record<string, unknown>;
|
|
39
|
+
}
|
|
40
|
+
export declare function buildWorkoutMesgs(plan: WorkoutPlan): FitMesg[];
|
|
41
|
+
export declare function encodeWorkout(plan: WorkoutPlan): Uint8Array;
|
package/dist/FIT/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export { FITEncoder } from "./encoder.js";
|
|
|
3
3
|
export { IFITMessageConverter, IFITStructurePlugin, IFITMiddlewarePlugin, BaseFITMessageConverter, BaseFITStructurePlugin, BaseFITMiddleware, } from "./base.js";
|
|
4
4
|
export { SessionStructurePlugin, CourseStructurePlugin, FileHeaderPlugin, } from "./plugins.js";
|
|
5
5
|
export * from "./types.js";
|
|
6
|
+
export { encodeCourse, buildCourseMesgs, type CoursePlan, type CourseRecordPoint, type CourseCuePoint, type FitMesg as CourseFitMesg, } from "./encoderCourse.js";
|
|
6
7
|
import { FITDecoder } from "./decoder.js";
|
|
7
8
|
import { FITEncoder } from "./encoder.js";
|
|
8
9
|
declare const _default: {
|
|
@@ -1,66 +1,54 @@
|
|
|
1
1
|
export declare enum MesgNum {
|
|
2
2
|
FILE_ID = 0,
|
|
3
|
+
FILE_CREATOR = 49,
|
|
4
|
+
TIMESTAMP_CORRELATION = 162,
|
|
5
|
+
SOFTWARE = 35,
|
|
6
|
+
SLAVE_DEVICE = 106,
|
|
3
7
|
CAPABILITIES = 1,
|
|
8
|
+
FILE_CAPABILITIES = 37,
|
|
9
|
+
MESG_CAPABILITIES = 38,
|
|
10
|
+
FIELD_CAPABILITIES = 39,
|
|
4
11
|
DEVICE_SETTINGS = 2,
|
|
5
12
|
USER_PROFILE = 3,
|
|
6
13
|
HRM_PROFILE = 4,
|
|
7
14
|
SDM_PROFILE = 5,
|
|
8
15
|
BIKE_PROFILE = 6,
|
|
16
|
+
CONNECTIVITY = 127,
|
|
17
|
+
WATCHFACE_SETTINGS = 159,
|
|
18
|
+
OHR_SETTINGS = 188,
|
|
19
|
+
TIME_IN_ZONE = 216,
|
|
9
20
|
ZONES_TARGET = 7,
|
|
21
|
+
SPORT = 12,
|
|
10
22
|
HR_ZONE = 8,
|
|
23
|
+
SPEED_ZONE = 53,
|
|
24
|
+
CADENCE_ZONE = 131,
|
|
11
25
|
POWER_ZONE = 9,
|
|
12
26
|
MET_ZONE = 10,
|
|
13
|
-
|
|
27
|
+
TRAINING_SETTINGS = 13,
|
|
28
|
+
DIVE_SETTINGS = 258,
|
|
29
|
+
DIVE_ALARM = 262,
|
|
30
|
+
DIVE_APNEA_ALARM = 393,
|
|
31
|
+
DIVE_GAS = 259,
|
|
14
32
|
GOAL = 15,
|
|
33
|
+
ACTIVITY = 34,
|
|
15
34
|
SESSION = 18,
|
|
16
35
|
LAP = 19,
|
|
36
|
+
LENGTH = 101,
|
|
17
37
|
RECORD = 20,
|
|
18
38
|
EVENT = 21,
|
|
19
39
|
DEVICE_INFO = 23,
|
|
20
|
-
|
|
21
|
-
WORKOUT_STEP = 27,
|
|
22
|
-
SCHEDULE = 28,
|
|
23
|
-
WEIGHT_SCALE = 30,
|
|
24
|
-
COURSE = 31,
|
|
25
|
-
COURSE_POINT = 32,
|
|
26
|
-
TOTALS = 33,
|
|
27
|
-
ACTIVITY = 34,
|
|
28
|
-
SOFTWARE = 35,
|
|
29
|
-
FILE_CAPABILITIES = 37,
|
|
30
|
-
MESG_CAPABILITIES = 38,
|
|
31
|
-
FIELD_CAPABILITIES = 39,
|
|
32
|
-
FILE_CREATOR = 49,
|
|
33
|
-
BLOOD_PRESSURE = 51,
|
|
34
|
-
SPEED_ZONE = 53,
|
|
35
|
-
MONITORING = 55,
|
|
40
|
+
DEVICE_AUX_BATTERY_INFO = 375,
|
|
36
41
|
TRAINING_FILE = 72,
|
|
37
|
-
HRV = 78,
|
|
38
|
-
ANT_RX = 80,
|
|
39
|
-
ANT_TX = 81,
|
|
40
|
-
ANT_CHANNEL_ID = 82,
|
|
41
|
-
LENGTH = 101,
|
|
42
|
-
MONITORING_INFO = 103,
|
|
43
|
-
PAD = 105,
|
|
44
|
-
SLAVE_DEVICE = 106,
|
|
45
|
-
CONNECTIVITY = 127,
|
|
46
42
|
WEATHER_CONDITIONS = 128,
|
|
47
43
|
WEATHER_ALERT = 129,
|
|
48
|
-
CADENCE_ZONE = 131,
|
|
49
|
-
HR = 132,
|
|
50
|
-
SEGMENT_LAP = 142,
|
|
51
|
-
MEMO_GLOB = 145,
|
|
52
|
-
SEGMENT_ID = 148,
|
|
53
|
-
SEGMENT_LEADERBOARD_ENTRY = 149,
|
|
54
|
-
SEGMENT_POINT = 150,
|
|
55
|
-
SEGMENT_FILE = 151,
|
|
56
|
-
WORKOUT_SESSION = 158,
|
|
57
|
-
WATCHFACE_SETTINGS = 159,
|
|
58
44
|
GPS_METADATA = 160,
|
|
59
45
|
CAMERA_EVENT = 161,
|
|
60
|
-
TIMESTAMP_CORRELATION = 162,
|
|
61
46
|
GYROSCOPE_DATA = 164,
|
|
62
47
|
ACCELEROMETER_DATA = 165,
|
|
48
|
+
MAGNETOMETER_DATA = 208,
|
|
49
|
+
BAROMETER_DATA = 209,
|
|
63
50
|
THREE_D_SENSOR_CALIBRATION = 167,
|
|
51
|
+
ONE_D_SENSOR_CALIBRATION = 210,
|
|
64
52
|
VIDEO_FRAME = 169,
|
|
65
53
|
OBDII_DATA = 174,
|
|
66
54
|
NMEA_SENTENCE = 177,
|
|
@@ -71,35 +59,67 @@ export declare enum MesgNum {
|
|
|
71
59
|
VIDEO_CLIP = 187,
|
|
72
60
|
SET = 225,
|
|
73
61
|
JUMP = 285,
|
|
62
|
+
SPLIT = 312,
|
|
63
|
+
SPLIT_SUMMARY = 313,
|
|
74
64
|
CLIMB_PRO = 317,
|
|
75
65
|
FIELD_DESCRIPTION = 206,
|
|
76
66
|
DEVELOPER_DATA_ID = 207,
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
67
|
+
COURSE = 31,
|
|
68
|
+
COURSE_POINT = 32,
|
|
69
|
+
SEGMENT_ID = 148,
|
|
70
|
+
SEGMENT_LEADERBOARD_ENTRY = 149,
|
|
71
|
+
SEGMENT_POINT = 150,
|
|
72
|
+
SEGMENT_LAP = 142,
|
|
73
|
+
SEGMENT_FILE = 151,
|
|
74
|
+
WORKOUT = 26,
|
|
75
|
+
WORKOUT_SESSION = 158,
|
|
76
|
+
WORKOUT_STEP = 27,
|
|
85
77
|
EXERCISE_TITLE = 264,
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
78
|
+
SCHEDULE = 28,
|
|
79
|
+
TOTALS = 33,
|
|
80
|
+
WEIGHT_SCALE = 30,
|
|
81
|
+
BLOOD_PRESSURE = 51,
|
|
82
|
+
MONITORING_INFO = 103,
|
|
83
|
+
MONITORING = 55,
|
|
84
|
+
MONITORING_HR_DATA = 211,
|
|
85
|
+
SPO2_DATA = 269,
|
|
86
|
+
HR = 132,
|
|
87
|
+
STRESS_LEVEL = 227,
|
|
88
|
+
MAX_MET_DATA = 229,
|
|
89
89
|
HSA_BODY_BATTERY_DATA = 314,
|
|
90
90
|
HSA_EVENT = 315,
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
91
|
+
HSA_ACCELEROMETER_DATA = 302,
|
|
92
|
+
HSA_GYROSCOPE_DATA = 376,
|
|
93
|
+
HSA_STEP_DATA = 304,
|
|
94
|
+
HSA_SPO2_DATA = 305,
|
|
95
|
+
HSA_STRESS_DATA = 306,
|
|
96
|
+
HSA_RESPIRATION_DATA = 307,
|
|
97
|
+
HSA_HEART_RATE_DATA = 308,
|
|
98
|
+
HSA_CONFIGURATION_DATA = 389,
|
|
99
|
+
HSA_WRIST_TEMPERATURE_DATA = 409,
|
|
100
|
+
MEMO_GLOB = 145,
|
|
101
|
+
SLEEP_LEVEL = 275,
|
|
102
|
+
ANT_CHANNEL_ID = 82,
|
|
103
|
+
ANT_RX = 80,
|
|
104
|
+
ANT_TX = 81,
|
|
105
|
+
EXD_SCREEN_CONFIGURATION = 200,
|
|
106
|
+
EXD_DATA_FIELD_CONFIGURATION = 201,
|
|
107
|
+
EXD_DATA_CONCEPT_CONFIGURATION = 202,
|
|
108
|
+
DIVE_SUMMARY = 268,
|
|
109
|
+
AAD_ACCEL_FEATURES = 289,
|
|
110
|
+
HRV = 78,
|
|
111
|
+
BEAT_INTERVALS = 290,
|
|
94
112
|
HRV_STATUS_SUMMARY = 370,
|
|
95
113
|
HRV_VALUE = 371,
|
|
96
114
|
RAW_BBI = 372,
|
|
97
|
-
|
|
98
|
-
HSA_GYROSCOPE_DATA = 376,
|
|
115
|
+
RESPIRATION_RATE = 297,
|
|
99
116
|
CHRONO_SHOT_SESSION = 387,
|
|
100
117
|
CHRONO_SHOT_DATA = 388,
|
|
101
|
-
|
|
102
|
-
|
|
118
|
+
TANK_UPDATE = 319,
|
|
119
|
+
TANK_SUMMARY = 323,
|
|
120
|
+
SLEEP_ASSESSMENT = 346,
|
|
121
|
+
SLEEP_DISRUPTION_SEVERITY_PERIOD = 470,
|
|
122
|
+
SLEEP_DISRUPTION_OVERNIGHT_SEVERITY = 471,
|
|
103
123
|
SKIN_TEMP_OVERNIGHT = 398,
|
|
104
|
-
|
|
124
|
+
PAD = 105
|
|
105
125
|
}
|