@runnerpro/backend 1.16.11 → 1.17.0
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/lib/cjs/db/index.js +81 -2
- package/lib/cjs/types/db/index.d.ts.map +1 -1
- package/lib/cjs/types/workout/estructuraWorkout.d.ts +1 -4
- package/lib/cjs/types/workout/estructuraWorkout.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10k.d.ts +57 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10k.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kMas50.d.ts +57 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kMas50.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kPrimer.d.ts +57 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kPrimer.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kSub50.d.ts +19 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kSub50.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21k.d.ts +27 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21k.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kMas105.d.ts +27 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kMas105.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kPrimer.d.ts +19 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kPrimer.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kSub105.d.ts +27 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kSub105.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kMas210.d.ts +51 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kMas210.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kPrimer.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kSub210.d.ts +19 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kSub210.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5k.d.ts +19 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5k.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5kPrimer.d.ts +19 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5kPrimer.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5kSub30.d.ts +19 -2
- package/lib/cjs/types/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5kSub30.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/common.d.ts +4 -4
- package/lib/cjs/types/workout/planificacionPrueba7dias/common.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/empezarCorrer/getPlanificacionPrueba7diasEmpezarCorrer1.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/empezarCorrer/getPlanificacionPrueba7diasEmpezarCorrer2.d.ts.map +1 -1
- package/lib/cjs/types/workout/planificacionPrueba7dias/empezarCorrer/getPlanificacionPrueba7diasEmpezarCorrer3.d.ts.map +1 -1
- package/lib/cjs/workout/estructuraWorkout.js +1 -130
- package/lib/cjs/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kMas50.js +22 -13
- package/lib/cjs/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kPrimer.js +37 -31
- package/lib/cjs/workout/planificacionPrueba7dias/10k/getPlanificacionPrueba7dias10kSub50.js +22 -14
- package/lib/cjs/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kMas105.js +24 -14
- package/lib/cjs/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kPrimer.js +21 -12
- package/lib/cjs/workout/planificacionPrueba7dias/21k/getPlanificacionPrueba7dias21kSub105.js +26 -16
- package/lib/cjs/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kMas210.js +24 -15
- package/lib/cjs/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kPrimer.js +20 -12
- package/lib/cjs/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kSub210.js +18 -10
- package/lib/cjs/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5kPrimer.js +24 -14
- package/lib/cjs/workout/planificacionPrueba7dias/5k/getPlanificacionPrueba7dias5kSub30.js +22 -13
- package/lib/cjs/workout/planificacionPrueba7dias/common.js +20 -47
- package/lib/cjs/workout/planificacionPrueba7dias/empezarCorrer/getPlanificacionPrueba7diasEmpezarCorrer1.js +9 -6
- package/lib/cjs/workout/planificacionPrueba7dias/empezarCorrer/getPlanificacionPrueba7diasEmpezarCorrer2.js +9 -6
- package/lib/cjs/workout/planificacionPrueba7dias/empezarCorrer/getPlanificacionPrueba7diasEmpezarCorrer3.js +9 -6
- package/package.json +1 -1
package/lib/cjs/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kPrimer.js
CHANGED
|
@@ -19,8 +19,8 @@ const getDay1 = (c) => {
|
|
|
19
19
|
description: 'Entrenamiento que consiste en realizar 10 series de 300m a un ritmo cercano Vo2 Máx + 300m de carrera a ritmo de rodaje suave',
|
|
20
20
|
shortDescription: "Calentamiento 15' + 10x(300m rápido + 300m suave) + enfriamiento 15'",
|
|
21
21
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
22
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 900,
|
|
23
|
-
durationPlanned: 1800 + (0, common_2.calculateDuration)(c, 10 * 300,
|
|
22
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 900, 2) + (0, common_2.calculateDistance)(c, 900, 2) + 10 * (300 + 300),
|
|
23
|
+
durationPlanned: 1800 + (0, common_2.calculateDuration)(c, 10 * 300, 5) + (0, common_2.calculateDuration)(c, 10 * 300, 2),
|
|
24
24
|
structure: [
|
|
25
25
|
// Calentamiento
|
|
26
26
|
{
|
|
@@ -29,7 +29,8 @@ const getDay1 = (c) => {
|
|
|
29
29
|
typeMetric1: 2,
|
|
30
30
|
valueMetric1: 900,
|
|
31
31
|
typeMetric2: 1,
|
|
32
|
-
valueMetric2: (0, common_2.
|
|
32
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
33
|
+
zoneMetric2: 2,
|
|
33
34
|
},
|
|
34
35
|
],
|
|
35
36
|
};
|
|
@@ -43,7 +44,8 @@ const getDay1 = (c) => {
|
|
|
43
44
|
typeMetric1: 1,
|
|
44
45
|
valueMetric1: 300,
|
|
45
46
|
typeMetric2: 1,
|
|
46
|
-
valueMetric2: (0, common_2.
|
|
47
|
+
valueMetric2: (0, common_2.paceByZone)(c, 5),
|
|
48
|
+
zoneMetric2: 5,
|
|
47
49
|
});
|
|
48
50
|
day.structure.push({
|
|
49
51
|
index: 2 + i * 2,
|
|
@@ -54,7 +56,8 @@ const getDay1 = (c) => {
|
|
|
54
56
|
typeMetric1: 1,
|
|
55
57
|
valueMetric1: 300,
|
|
56
58
|
typeMetric2: 1,
|
|
57
|
-
valueMetric2: (0, common_2.
|
|
59
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
60
|
+
zoneMetric2: 2,
|
|
58
61
|
});
|
|
59
62
|
}
|
|
60
63
|
day.structure.push({
|
|
@@ -63,7 +66,8 @@ const getDay1 = (c) => {
|
|
|
63
66
|
typeMetric1: 2,
|
|
64
67
|
valueMetric1: 900,
|
|
65
68
|
typeMetric2: 1,
|
|
66
|
-
valueMetric2: (0, common_2.
|
|
69
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
70
|
+
zoneMetric2: 2,
|
|
67
71
|
});
|
|
68
72
|
return day;
|
|
69
73
|
};
|
|
@@ -73,7 +77,7 @@ const getDay2 = (c) => {
|
|
|
73
77
|
description: 'Entrenamiento basado en la intercalación de periodos de rodaje a tiempo de carrera + periodos de rodajes suaves',
|
|
74
78
|
shortDescription: "Calentamiento 15' + 3x8' + 3x6' + enfriamiento 10'",
|
|
75
79
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
76
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 900,
|
|
80
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 900, 2) + (0, common_2.calculateDistance)(c, 600, 2) + (0, common_2.calculateDistance)(c, 3 * 480, 3) + (0, common_2.calculateDistance)(c, 3 * 360, 4),
|
|
77
81
|
durationPlanned: 1500 + 3 * 480 + 3 * 360 + 6 * 120,
|
|
78
82
|
structure: [
|
|
79
83
|
// Calentamiento
|
|
@@ -83,7 +87,8 @@ const getDay2 = (c) => {
|
|
|
83
87
|
typeMetric1: 2,
|
|
84
88
|
valueMetric1: 900,
|
|
85
89
|
typeMetric2: 1,
|
|
86
|
-
valueMetric2: (0, common_2.
|
|
90
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
91
|
+
zoneMetric2: 2,
|
|
87
92
|
},
|
|
88
93
|
],
|
|
89
94
|
};
|
|
@@ -97,7 +102,8 @@ const getDay2 = (c) => {
|
|
|
97
102
|
typeMetric1: 2,
|
|
98
103
|
valueMetric1: 480,
|
|
99
104
|
typeMetric2: 1,
|
|
100
|
-
valueMetric2: (0, common_2.
|
|
105
|
+
valueMetric2: (0, common_2.paceByZone)(c, 3),
|
|
106
|
+
zoneMetric2: 3,
|
|
101
107
|
});
|
|
102
108
|
day.structure.push({
|
|
103
109
|
index: 2 + i * 2,
|
|
@@ -119,7 +125,8 @@ const getDay2 = (c) => {
|
|
|
119
125
|
typeMetric1: 2,
|
|
120
126
|
valueMetric1: 360,
|
|
121
127
|
typeMetric2: 1,
|
|
122
|
-
valueMetric2: (0, common_2.
|
|
128
|
+
valueMetric2: (0, common_2.paceByZone)(c, 4),
|
|
129
|
+
zoneMetric2: 4,
|
|
123
130
|
});
|
|
124
131
|
day.structure.push({
|
|
125
132
|
index: 8 + i * 2,
|
|
@@ -137,7 +144,8 @@ const getDay2 = (c) => {
|
|
|
137
144
|
typeMetric1: 2,
|
|
138
145
|
valueMetric1: 600,
|
|
139
146
|
typeMetric2: 1,
|
|
140
|
-
valueMetric2: (0, common_2.
|
|
147
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
148
|
+
zoneMetric2: 2,
|
|
141
149
|
});
|
|
142
150
|
return day;
|
|
143
151
|
};
|
|
@@ -148,6 +156,6 @@ const getDay3 = (c) => {
|
|
|
148
156
|
shortDescription: '1h 30m ritmo suave',
|
|
149
157
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
150
158
|
durationPlanned: 5400,
|
|
151
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 5400,
|
|
159
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 5400, 2),
|
|
152
160
|
};
|
|
153
161
|
};
|
package/lib/cjs/workout/planificacionPrueba7dias/42k/getPlanificacionPrueba7dias42kSub210.js
CHANGED
|
@@ -19,7 +19,7 @@ const getDay1 = (c) => {
|
|
|
19
19
|
description: "Entrenamiento medianamente duro, con una velocidad que podrías mantener al menos durante 20-30 minutos. El entrenamiento consiste en realizar 7 series de 6' a un ritmo 85% FC Máxima o Vo2 Max con 1'30 de pausa entre parciales.",
|
|
20
20
|
shortDescription: "Calentamiento 15' + 7x (6' a ritmo rápido) + enfriamiento 10'",
|
|
21
21
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
22
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 1500,
|
|
22
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 1500, 2) + (0, common_2.calculateDistance)(c, 7 * 360, 4),
|
|
23
23
|
durationPlanned: 1500 + 7 * (360 + 90),
|
|
24
24
|
structure: [
|
|
25
25
|
// Calentamiento
|
|
@@ -29,7 +29,8 @@ const getDay1 = (c) => {
|
|
|
29
29
|
typeMetric1: 2,
|
|
30
30
|
valueMetric1: 900,
|
|
31
31
|
typeMetric2: 1,
|
|
32
|
-
valueMetric2: (0, common_2.
|
|
32
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
33
|
+
zoneMetric2: 2,
|
|
33
34
|
},
|
|
34
35
|
],
|
|
35
36
|
};
|
|
@@ -43,7 +44,8 @@ const getDay1 = (c) => {
|
|
|
43
44
|
typeMetric1: 2,
|
|
44
45
|
valueMetric1: 360,
|
|
45
46
|
typeMetric2: 1,
|
|
46
|
-
valueMetric2: (0, common_2.
|
|
47
|
+
valueMetric2: (0, common_2.paceByZone)(c, 4),
|
|
48
|
+
zoneMetric2: 4,
|
|
47
49
|
});
|
|
48
50
|
day.structure.push({
|
|
49
51
|
index: 2 + i * 2,
|
|
@@ -61,7 +63,8 @@ const getDay1 = (c) => {
|
|
|
61
63
|
typeMetric1: 2,
|
|
62
64
|
valueMetric1: 600,
|
|
63
65
|
typeMetric2: 1,
|
|
64
|
-
valueMetric2: (0, common_2.
|
|
66
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
67
|
+
zoneMetric2: 2,
|
|
65
68
|
});
|
|
66
69
|
return day;
|
|
67
70
|
};
|
|
@@ -71,7 +74,7 @@ const getDay2 = (c) => {
|
|
|
71
74
|
description: "Entrenamiento que consiste en realizar 12 series de 2' a un ritmo cercano o el mismo del Vo2 Máx + 1' 30 de carrera a ritmo de rodaje suave",
|
|
72
75
|
shortDescription: "Calentamiento 15' + 12x (2' rápido + 1'30\" suave) + enfriamiento 15'",
|
|
73
76
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
74
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 1800,
|
|
77
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 1800, 2) + (0, common_2.calculateDistance)(c, 12 * 120, 5) + (0, common_2.calculateDistance)(c, 12 * 90, 2),
|
|
75
78
|
durationPlanned: 1800 + 12 * (120 + 90),
|
|
76
79
|
structure: [
|
|
77
80
|
// Calentamiento
|
|
@@ -81,7 +84,8 @@ const getDay2 = (c) => {
|
|
|
81
84
|
typeMetric1: 2,
|
|
82
85
|
valueMetric1: 900,
|
|
83
86
|
typeMetric2: 1,
|
|
84
|
-
valueMetric2: (0, common_2.
|
|
87
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
88
|
+
zoneMetric2: 2,
|
|
85
89
|
},
|
|
86
90
|
],
|
|
87
91
|
};
|
|
@@ -95,7 +99,8 @@ const getDay2 = (c) => {
|
|
|
95
99
|
typeMetric1: 2,
|
|
96
100
|
valueMetric1: 120,
|
|
97
101
|
typeMetric2: 1,
|
|
98
|
-
valueMetric2: (0, common_2.
|
|
102
|
+
valueMetric2: (0, common_2.paceByZone)(c, 5),
|
|
103
|
+
zoneMetric2: 5,
|
|
99
104
|
});
|
|
100
105
|
day.structure.push({
|
|
101
106
|
index: 2 + i * 2,
|
|
@@ -106,7 +111,8 @@ const getDay2 = (c) => {
|
|
|
106
111
|
typeMetric1: 2,
|
|
107
112
|
valueMetric1: 90,
|
|
108
113
|
typeMetric2: 1,
|
|
109
|
-
valueMetric2: (0, common_2.
|
|
114
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
115
|
+
zoneMetric2: 2,
|
|
110
116
|
});
|
|
111
117
|
}
|
|
112
118
|
day.structure.push({
|
|
@@ -115,7 +121,8 @@ const getDay2 = (c) => {
|
|
|
115
121
|
typeMetric1: 2,
|
|
116
122
|
valueMetric1: 900,
|
|
117
123
|
typeMetric2: 1,
|
|
118
|
-
valueMetric2: (0, common_2.
|
|
124
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
125
|
+
zoneMetric2: 2,
|
|
119
126
|
});
|
|
120
127
|
return day;
|
|
121
128
|
};
|
|
@@ -126,6 +133,7 @@ const getDay3 = (c) => {
|
|
|
126
133
|
shortDescription: '1h 50m ritmo suave',
|
|
127
134
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
128
135
|
durationPlanned: 6600,
|
|
129
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 6600,
|
|
136
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 6600, 2),
|
|
137
|
+
zoneMetric2: 2,
|
|
130
138
|
};
|
|
131
139
|
};
|
|
@@ -20,7 +20,8 @@ const getDay1 = (c) => {
|
|
|
20
20
|
shortDescription: "25' ritmo suave",
|
|
21
21
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
22
22
|
durationPlanned: 1500,
|
|
23
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 1500,
|
|
23
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 1500, 2),
|
|
24
|
+
zoneMetric2: 2,
|
|
24
25
|
};
|
|
25
26
|
};
|
|
26
27
|
const getDay2 = (c) => {
|
|
@@ -29,8 +30,8 @@ const getDay2 = (c) => {
|
|
|
29
30
|
description: 'Entrenamiento enfocado a mejorar la Velocidad y la resistencia. En este entrenamiento te enfrentarás a 6 series de 200 m a alta intensidad seguidos de 200 m de trote para recuperar. Entre medias hay un periodo de descanso de 2’, se debe realizar andando de forma suave',
|
|
30
31
|
shortDescription: "Calentamiento 10' + 2 vueltas de (200m rápidos y 200m suaves) + enfriamiento 10'",
|
|
31
32
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
32
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 2 * 10 * 60,
|
|
33
|
-
durationPlanned: 2 * 600 + 120 + (0, common_2.calculateDuration)(c, 1200,
|
|
33
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 2 * 10 * 60, 2) + 6 * (200 + 200),
|
|
34
|
+
durationPlanned: 2 * 600 + 120 + (0, common_2.calculateDuration)(c, 1200, 5) + (0, common_2.calculateDuration)(c, 1200, 2),
|
|
34
35
|
structure: [
|
|
35
36
|
{
|
|
36
37
|
index: 0,
|
|
@@ -38,7 +39,8 @@ const getDay2 = (c) => {
|
|
|
38
39
|
typeMetric1: 2,
|
|
39
40
|
valueMetric1: 600,
|
|
40
41
|
typeMetric2: 1,
|
|
41
|
-
valueMetric2: (0, common_2.
|
|
42
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
43
|
+
zoneMetric2: 2,
|
|
42
44
|
},
|
|
43
45
|
],
|
|
44
46
|
};
|
|
@@ -52,7 +54,8 @@ const getDay2 = (c) => {
|
|
|
52
54
|
typeMetric1: 1,
|
|
53
55
|
valueMetric1: 200,
|
|
54
56
|
typeMetric2: 1,
|
|
55
|
-
valueMetric2: (0, common_2.
|
|
57
|
+
valueMetric2: (0, common_2.paceByZone)(c, 5),
|
|
58
|
+
zoneMetric2: 5,
|
|
56
59
|
});
|
|
57
60
|
day.structure.push({
|
|
58
61
|
index: 2 + i * 2,
|
|
@@ -63,7 +66,8 @@ const getDay2 = (c) => {
|
|
|
63
66
|
typeMetric1: 1,
|
|
64
67
|
valueMetric1: 200,
|
|
65
68
|
typeMetric2: 1,
|
|
66
|
-
valueMetric2: (0, common_2.
|
|
69
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
70
|
+
zoneMetric2: 2,
|
|
67
71
|
});
|
|
68
72
|
}
|
|
69
73
|
// @ts-ignore
|
|
@@ -83,7 +87,8 @@ const getDay2 = (c) => {
|
|
|
83
87
|
typeMetric1: 1,
|
|
84
88
|
valueMetric1: 200,
|
|
85
89
|
typeMetric2: 1,
|
|
86
|
-
valueMetric2: (0, common_2.
|
|
90
|
+
valueMetric2: (0, common_2.paceByZone)(c, 5),
|
|
91
|
+
zoneMetric2: 5,
|
|
87
92
|
});
|
|
88
93
|
day.structure.push({
|
|
89
94
|
index: 9 + i * 2,
|
|
@@ -94,7 +99,8 @@ const getDay2 = (c) => {
|
|
|
94
99
|
typeMetric1: 1,
|
|
95
100
|
valueMetric1: 200,
|
|
96
101
|
typeMetric2: 1,
|
|
97
|
-
valueMetric2: (0, common_2.
|
|
102
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
103
|
+
zoneMetric2: 2,
|
|
98
104
|
});
|
|
99
105
|
}
|
|
100
106
|
day.structure.push({
|
|
@@ -103,7 +109,8 @@ const getDay2 = (c) => {
|
|
|
103
109
|
typeMetric1: 2,
|
|
104
110
|
valueMetric1: 600,
|
|
105
111
|
typeMetric2: 1,
|
|
106
|
-
valueMetric2: (0, common_2.
|
|
112
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
113
|
+
zoneMetric2: 2,
|
|
107
114
|
});
|
|
108
115
|
return day;
|
|
109
116
|
};
|
|
@@ -113,8 +120,8 @@ const getDay3 = (c) => {
|
|
|
113
120
|
description: 'En este entrenamiento realizarás 10’ de calentamiento, seguidos de 2km de carrera a un ritmo más alto. Finaliza con 10’ de enfriamiento después de los 2km.',
|
|
114
121
|
shortDescription: "Calentamiento 10' + 2km a ritmo tempo + enfriamiento 10'",
|
|
115
122
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
116
|
-
distancePlanned: 2000 + (0, common_2.calculateDistance)(c, 2 * 10 * 60,
|
|
117
|
-
durationPlanned: 1200 + (0, common_2.calculateDuration)(c, 2000,
|
|
123
|
+
distancePlanned: 2000 + (0, common_2.calculateDistance)(c, 2 * 10 * 60, 2),
|
|
124
|
+
durationPlanned: 1200 + (0, common_2.calculateDuration)(c, 2000, 3),
|
|
118
125
|
structure: [
|
|
119
126
|
{
|
|
120
127
|
index: 0,
|
|
@@ -122,7 +129,8 @@ const getDay3 = (c) => {
|
|
|
122
129
|
typeMetric1: 2,
|
|
123
130
|
valueMetric1: 600,
|
|
124
131
|
typeMetric2: 1,
|
|
125
|
-
valueMetric2: (0, common_2.
|
|
132
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
133
|
+
zoneMetric2: 2,
|
|
126
134
|
},
|
|
127
135
|
{
|
|
128
136
|
index: 1,
|
|
@@ -130,7 +138,8 @@ const getDay3 = (c) => {
|
|
|
130
138
|
typeMetric1: 1,
|
|
131
139
|
valueMetric1: 2000,
|
|
132
140
|
typeMetric2: 1,
|
|
133
|
-
valueMetric2: (0, common_2.
|
|
141
|
+
valueMetric2: (0, common_2.paceByZone)(c, 3),
|
|
142
|
+
zoneMetric2: 3,
|
|
134
143
|
},
|
|
135
144
|
{
|
|
136
145
|
index: 6,
|
|
@@ -138,7 +147,8 @@ const getDay3 = (c) => {
|
|
|
138
147
|
typeMetric1: 2,
|
|
139
148
|
valueMetric1: 600,
|
|
140
149
|
typeMetric2: 1,
|
|
141
|
-
valueMetric2: (0, common_2.
|
|
150
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
151
|
+
zoneMetric2: 2,
|
|
142
152
|
},
|
|
143
153
|
],
|
|
144
154
|
};
|
|
@@ -8,7 +8,7 @@ const getPlanificacionPrueba7dias5kSub30 = (c) => {
|
|
|
8
8
|
const day1 = getDay1(c);
|
|
9
9
|
// Calentamiento 10' + 3x800m + enfriamiento 10'
|
|
10
10
|
const day2 = getDay2(c);
|
|
11
|
-
// Correr 35'
|
|
11
|
+
// Correr 35' a zona 2
|
|
12
12
|
const day3 = getDay3(c);
|
|
13
13
|
return [day1, day2, day3];
|
|
14
14
|
};
|
|
@@ -19,7 +19,7 @@ const getDay1 = (c) => {
|
|
|
19
19
|
description: 'Comenzar con 10 minutos a un ritmo suave. A partir de ahí, incrementarás el ritmo cada 5 minutos durante 15 minutos. Finaliza con 10 minutos de enfriamiento. Después del calentamiento y antes del enfriamiento puedes descansar.',
|
|
20
20
|
shortDescription: "Calentamiento 10' + carrera ritmo progresivo 3x5' + enfriamiento 10'",
|
|
21
21
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
22
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 2 * 10 * 60,
|
|
22
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 2 * 10 * 60, 2) + (0, common_2.calculateDistance)(c, 300, 3) + (0, common_2.calculateDistance)(c, 300, 4) + (0, common_2.calculateDistance)(c, 300, 5),
|
|
23
23
|
durationPlanned: 1200 + 3 * 300,
|
|
24
24
|
structure: [
|
|
25
25
|
{
|
|
@@ -28,7 +28,8 @@ const getDay1 = (c) => {
|
|
|
28
28
|
typeMetric1: 2,
|
|
29
29
|
valueMetric1: 600,
|
|
30
30
|
typeMetric2: 1,
|
|
31
|
-
valueMetric2: (0, common_2.
|
|
31
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
32
|
+
zoneMetric2: 2,
|
|
32
33
|
},
|
|
33
34
|
{
|
|
34
35
|
index: 1,
|
|
@@ -38,7 +39,8 @@ const getDay1 = (c) => {
|
|
|
38
39
|
typeMetric1: 2,
|
|
39
40
|
valueMetric1: 300,
|
|
40
41
|
typeMetric2: 1,
|
|
41
|
-
valueMetric2: (0, common_2.
|
|
42
|
+
valueMetric2: (0, common_2.paceByZone)(c, 3),
|
|
43
|
+
zoneMetric2: 3,
|
|
42
44
|
},
|
|
43
45
|
{
|
|
44
46
|
index: 2,
|
|
@@ -48,7 +50,8 @@ const getDay1 = (c) => {
|
|
|
48
50
|
typeMetric1: 2,
|
|
49
51
|
valueMetric1: 300,
|
|
50
52
|
typeMetric2: 1,
|
|
51
|
-
valueMetric2: (0, common_2.
|
|
53
|
+
valueMetric2: (0, common_2.paceByZone)(c, 4),
|
|
54
|
+
zoneMetric2: 4,
|
|
52
55
|
},
|
|
53
56
|
{
|
|
54
57
|
index: 3,
|
|
@@ -58,7 +61,8 @@ const getDay1 = (c) => {
|
|
|
58
61
|
typeMetric1: 2,
|
|
59
62
|
valueMetric1: 300,
|
|
60
63
|
typeMetric2: 1,
|
|
61
|
-
valueMetric2: (0, common_2.
|
|
64
|
+
valueMetric2: (0, common_2.paceByZone)(c, 5),
|
|
65
|
+
zoneMetric2: 5,
|
|
62
66
|
},
|
|
63
67
|
{
|
|
64
68
|
index: 4,
|
|
@@ -66,7 +70,8 @@ const getDay1 = (c) => {
|
|
|
66
70
|
typeMetric1: 2,
|
|
67
71
|
valueMetric1: 600,
|
|
68
72
|
typeMetric2: 1,
|
|
69
|
-
valueMetric2: (0, common_2.
|
|
73
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
74
|
+
zoneMetric2: 2,
|
|
70
75
|
},
|
|
71
76
|
],
|
|
72
77
|
};
|
|
@@ -77,8 +82,8 @@ const getDay2 = (c) => {
|
|
|
77
82
|
description: 'Aquí te enfrentarás a 3 repeticiones de 800 metros. Es un balance entre velocidad y resistencia, por lo que es fundamental mantener un ritmo que te desafíe pero que puedas sostener. Descansarás 2 minutos entre series.',
|
|
78
83
|
shortDescription: "Calentamiento 10' + 3x (800m ritmo rápido + 2' recuperación) + enfriamiento 10'",
|
|
79
84
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
80
|
-
distancePlanned: 2400 + (0, common_2.calculateDistance)(c, 600,
|
|
81
|
-
durationPlanned: 1200 + (0, common_2.calculateDuration)(c, 2400,
|
|
85
|
+
distancePlanned: 2400 + (0, common_2.calculateDistance)(c, 600, 2) + (0, common_2.calculateDistance)(c, 600, 2),
|
|
86
|
+
durationPlanned: 1200 + (0, common_2.calculateDuration)(c, 2400, 4) + 3 * 120,
|
|
82
87
|
structure: [
|
|
83
88
|
// Calentamiento
|
|
84
89
|
{
|
|
@@ -87,7 +92,8 @@ const getDay2 = (c) => {
|
|
|
87
92
|
typeMetric1: 2,
|
|
88
93
|
valueMetric1: 600,
|
|
89
94
|
typeMetric2: 1,
|
|
90
|
-
valueMetric2: (0, common_2.
|
|
95
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
96
|
+
zoneMetric2: 2,
|
|
91
97
|
},
|
|
92
98
|
],
|
|
93
99
|
};
|
|
@@ -101,7 +107,8 @@ const getDay2 = (c) => {
|
|
|
101
107
|
typeMetric1: 1,
|
|
102
108
|
valueMetric1: 800,
|
|
103
109
|
typeMetric2: 1,
|
|
104
|
-
valueMetric2: (0, common_2.
|
|
110
|
+
valueMetric2: (0, common_2.paceByZone)(c, 4),
|
|
111
|
+
zoneMetric2: 4,
|
|
105
112
|
});
|
|
106
113
|
day.structure.push({
|
|
107
114
|
index: 2 + i * 2,
|
|
@@ -119,7 +126,8 @@ const getDay2 = (c) => {
|
|
|
119
126
|
typeMetric1: 2,
|
|
120
127
|
valueMetric1: 600,
|
|
121
128
|
typeMetric2: 1,
|
|
122
|
-
valueMetric2: (0, common_2.
|
|
129
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
130
|
+
zoneMetric2: 2,
|
|
123
131
|
});
|
|
124
132
|
return day;
|
|
125
133
|
};
|
|
@@ -130,6 +138,7 @@ const getDay3 = (c) => {
|
|
|
130
138
|
shortDescription: "35' ritmo suave",
|
|
131
139
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
132
140
|
durationPlanned: 2100,
|
|
133
|
-
distancePlanned: (0, common_2.calculateDistance)(c, 2100,
|
|
141
|
+
distancePlanned: (0, common_2.calculateDistance)(c, 2100, 2),
|
|
142
|
+
zoneMetric2: 2,
|
|
134
143
|
};
|
|
135
144
|
};
|
|
@@ -1,55 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.prettyPace = exports.calculateDuration = exports.calculateDistance = exports.
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
3
|
+
exports.prettyPace = exports.calculateDuration = exports.calculateDistance = exports.paceByZone = void 0;
|
|
4
|
+
const paceByZone = (c, zone) => {
|
|
5
|
+
if (zone === 1)
|
|
6
|
+
return c.paceZone1;
|
|
7
|
+
if (zone === 2)
|
|
8
|
+
return c.paceZone2;
|
|
9
|
+
if (zone === 3)
|
|
10
|
+
return c.paceZone3;
|
|
11
|
+
if (zone === 4)
|
|
12
|
+
return c.paceZone4;
|
|
13
|
+
if (zone === 5)
|
|
14
|
+
return c.paceZone5;
|
|
15
|
+
if (zone === 6)
|
|
16
|
+
return c.paceZone6;
|
|
17
|
+
return c.paceZone2 || 360;
|
|
15
18
|
};
|
|
16
|
-
exports.
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
const marathonPace = (Number(c.vamDuration) * (42000 / Number(c.vamDistance)) * 1.07) / 42;
|
|
20
|
-
// Devolver el resultado en el 75% del VAM
|
|
21
|
-
return (marathonPace * 0.8) / 0.75;
|
|
22
|
-
};
|
|
23
|
-
const getPaceByRestOfData = (c) => {
|
|
24
|
-
if (c.paceSlow)
|
|
25
|
-
return c.paceSlow;
|
|
26
|
-
if (c.gender === 'F') {
|
|
27
|
-
if (18 <= c.edad && c.edad <= 35)
|
|
28
|
-
return 375; // 6'15"/km
|
|
29
|
-
if (36 <= c.edad && c.edad <= 45)
|
|
30
|
-
return 390; // 6'30"/km
|
|
31
|
-
if (46 <= c.edad && c.edad <= 60)
|
|
32
|
-
return 405; // 6'45"/km
|
|
33
|
-
if (c.edad > +60)
|
|
34
|
-
return 420; // 7'00"/km
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
if (18 <= c.edad && c.edad <= 35)
|
|
38
|
-
return 330; // 5'30"/km
|
|
39
|
-
if (36 <= c.edad && c.edad <= 45)
|
|
40
|
-
return 345; // 5'45"/km
|
|
41
|
-
if (46 <= c.edad && c.edad <= 60)
|
|
42
|
-
return 360; // 6'00"/km
|
|
43
|
-
if (c.edad > 60)
|
|
44
|
-
return 375; // 6'15"/km
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
const calculateDistance = (c, duration, vam) => {
|
|
48
|
-
return Math.trunc((duration / paceByVAM(c, vam)) * 1000);
|
|
19
|
+
exports.paceByZone = paceByZone;
|
|
20
|
+
const calculateDistance = (c, duration, zone) => {
|
|
21
|
+
return Math.trunc((duration / paceByZone(c, zone)) * 1000);
|
|
49
22
|
};
|
|
50
23
|
exports.calculateDistance = calculateDistance;
|
|
51
|
-
const calculateDuration = (c, distance,
|
|
52
|
-
return Math.trunc((distance / 1000) *
|
|
24
|
+
const calculateDuration = (c, distance, zone) => {
|
|
25
|
+
return Math.trunc((distance / 1000) * paceByZone(c, zone));
|
|
53
26
|
};
|
|
54
27
|
exports.calculateDuration = calculateDuration;
|
|
55
28
|
const prettyPace = (stringPace) => {
|
|
@@ -19,7 +19,7 @@ const getDay1 = (c) => {
|
|
|
19
19
|
description: 'Método "CaCo" para familiarizar las estructuras corporales con la carrera. Alternar 2 minutos de caminata con 1 de carrera, enfocándote en resistencia y una adaptación gradual. Mantén un ritmo cómodo y con una buena postura.',
|
|
20
20
|
shortDescription: "Calentamiento 15' + 3x1' correr",
|
|
21
21
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
22
|
-
distancePlanned: 1000 + (0, common_2.calculateDistance)(c, 3 * 60,
|
|
22
|
+
distancePlanned: 1000 + (0, common_2.calculateDistance)(c, 3 * 60, 2) + 3 * 200,
|
|
23
23
|
durationPlanned: 900 + 3 * 180,
|
|
24
24
|
structure: [
|
|
25
25
|
{
|
|
@@ -40,7 +40,8 @@ const getDay1 = (c) => {
|
|
|
40
40
|
typeMetric1: 2,
|
|
41
41
|
valueMetric1: 60,
|
|
42
42
|
typeMetric2: 1,
|
|
43
|
-
valueMetric2: (0, common_2.
|
|
43
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
44
|
+
zoneMetric2: 2,
|
|
44
45
|
});
|
|
45
46
|
day.structure.push({
|
|
46
47
|
index: 2 + i * 2,
|
|
@@ -60,7 +61,7 @@ const getDay2 = (c) => {
|
|
|
60
61
|
description: 'Método "CaCo" para familiarizar las estructuras corporales con la carrera. Alternar 2 minutos de caminata con 1 de carrera, enfocándote en resistencia y una adaptación gradual. Mantén un ritmo cómodo y con una buena postura.',
|
|
61
62
|
shortDescription: "Calentamiento 15' + 4x1' correr",
|
|
62
63
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
63
|
-
distancePlanned: 1000 + (0, common_2.calculateDistance)(c, 4 * 60,
|
|
64
|
+
distancePlanned: 1000 + (0, common_2.calculateDistance)(c, 4 * 60, 2) + 4 * 200,
|
|
64
65
|
durationPlanned: 900 + 4 * 180,
|
|
65
66
|
structure: [
|
|
66
67
|
{
|
|
@@ -81,7 +82,8 @@ const getDay2 = (c) => {
|
|
|
81
82
|
typeMetric1: 2,
|
|
82
83
|
valueMetric1: 60,
|
|
83
84
|
typeMetric2: 1,
|
|
84
|
-
valueMetric2: (0, common_2.
|
|
85
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
86
|
+
zoneMetric2: 2,
|
|
85
87
|
});
|
|
86
88
|
day.structure.push({
|
|
87
89
|
index: 2 + i * 2,
|
|
@@ -101,7 +103,7 @@ const getDay3 = (c) => {
|
|
|
101
103
|
description: 'Método "CaCo" para familiarizar las estructuras corporales con la carrera. Alternar 2 minutos de caminata con 1 de carrera, enfocándote en resistencia y una adaptación gradual. Mantén un ritmo cómodo y con una buena postura.',
|
|
102
104
|
shortDescription: "Calentamiento 15' + 5x1' correr",
|
|
103
105
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
104
|
-
distancePlanned: 1000 + (0, common_2.calculateDistance)(c, 5 * 60,
|
|
106
|
+
distancePlanned: 1000 + (0, common_2.calculateDistance)(c, 5 * 60, 2) + 5 * 200,
|
|
105
107
|
durationPlanned: 900 + 5 * 180,
|
|
106
108
|
structure: [
|
|
107
109
|
{
|
|
@@ -122,7 +124,8 @@ const getDay3 = (c) => {
|
|
|
122
124
|
typeMetric1: 2,
|
|
123
125
|
valueMetric1: 60,
|
|
124
126
|
typeMetric2: 1,
|
|
125
|
-
valueMetric2: (0, common_2.
|
|
127
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
128
|
+
zoneMetric2: 2,
|
|
126
129
|
});
|
|
127
130
|
day.structure.push({
|
|
128
131
|
index: 2 + i * 2,
|
|
@@ -19,7 +19,7 @@ const getDay1 = (c) => {
|
|
|
19
19
|
description: 'Método "CaCo" para familiarizar las estructuras corporales con la carrera. Alternar 2 minutos de caminata con 3 de carrera, enfocándote en resistencia y una adaptación gradual. Mantén un ritmo cómodo y con una buena postura.',
|
|
20
20
|
shortDescription: "Calentamiento 10' + 3x3' correr",
|
|
21
21
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
22
|
-
distancePlanned: 800 + (0, common_2.calculateDistance)(c, 3 * 180,
|
|
22
|
+
distancePlanned: 800 + (0, common_2.calculateDistance)(c, 3 * 180, 2) + 3 * 200,
|
|
23
23
|
durationPlanned: 600 + 3 * 300,
|
|
24
24
|
structure: [
|
|
25
25
|
{
|
|
@@ -40,7 +40,8 @@ const getDay1 = (c) => {
|
|
|
40
40
|
typeMetric1: 2,
|
|
41
41
|
valueMetric1: 180,
|
|
42
42
|
typeMetric2: 1,
|
|
43
|
-
valueMetric2: (0, common_2.
|
|
43
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
44
|
+
zoneMetric2: 2,
|
|
44
45
|
});
|
|
45
46
|
day.structure.push({
|
|
46
47
|
index: 2 + i * 2,
|
|
@@ -60,7 +61,7 @@ const getDay2 = (c) => {
|
|
|
60
61
|
description: 'Método "CaCo" para familiarizar las estructuras corporales con la carrera. Alternar 2 minutos de caminata con 3 de carrera, enfocándote en resistencia y una adaptación gradual. Mantén un ritmo cómodo y con una buena postura.',
|
|
61
62
|
shortDescription: "Calentamiento 10' + 4x3' correr",
|
|
62
63
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
63
|
-
distancePlanned: 800 + (0, common_2.calculateDistance)(c, 4 * 180,
|
|
64
|
+
distancePlanned: 800 + (0, common_2.calculateDistance)(c, 4 * 180, 2) + 4 * 200,
|
|
64
65
|
durationPlanned: 600 + 4 * 300,
|
|
65
66
|
structure: [
|
|
66
67
|
{
|
|
@@ -81,7 +82,8 @@ const getDay2 = (c) => {
|
|
|
81
82
|
typeMetric1: 2,
|
|
82
83
|
valueMetric1: 180,
|
|
83
84
|
typeMetric2: 1,
|
|
84
|
-
valueMetric2: (0, common_2.
|
|
85
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
86
|
+
zoneMetric2: 2,
|
|
85
87
|
});
|
|
86
88
|
day.structure.push({
|
|
87
89
|
index: 2 + i * 2,
|
|
@@ -101,7 +103,7 @@ const getDay3 = (c) => {
|
|
|
101
103
|
description: 'Método "CaCo" para familiarizar las estructuras corporales con la carrera. Alternar 2 minutos de caminata con 5 de carrera, enfocándote en resistencia y una adaptación gradual. Mantén un ritmo cómodo y con una buena postura.',
|
|
102
104
|
shortDescription: "Calentamiento 10' + 3x5' correr",
|
|
103
105
|
type: common_1.WORKOUT_TYPE.CORRER,
|
|
104
|
-
distancePlanned: 800 + (0, common_2.calculateDistance)(c, 3 * 300,
|
|
106
|
+
distancePlanned: 800 + (0, common_2.calculateDistance)(c, 3 * 300, 2) + 3 * 200,
|
|
105
107
|
durationPlanned: 600 + 3 * 420,
|
|
106
108
|
structure: [
|
|
107
109
|
{
|
|
@@ -122,7 +124,8 @@ const getDay3 = (c) => {
|
|
|
122
124
|
typeMetric1: 2,
|
|
123
125
|
valueMetric1: 300,
|
|
124
126
|
typeMetric2: 1,
|
|
125
|
-
valueMetric2: (0, common_2.
|
|
127
|
+
valueMetric2: (0, common_2.paceByZone)(c, 2),
|
|
128
|
+
zoneMetric2: 2,
|
|
126
129
|
});
|
|
127
130
|
day.structure.push({
|
|
128
131
|
index: 2 + i * 2,
|