@bitcobblers/wod-wiki-tools 0.43.2153 → 0.44.2155

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 (609) hide show
  1. package/dist/bin/wod.cjs +77 -3
  2. package/dist/bin/wod.cjs.map +1 -1
  3. package/dist/bin/wod.mjs +3 -3
  4. package/dist/{chunk-IEW74LUO.mjs → chunk-BQ6HTRH3.mjs} +77 -6
  5. package/dist/chunk-BQ6HTRH3.mjs.map +1 -0
  6. package/dist/{chunk-CFNE6XRA.mjs → chunk-PLUG6UUI.mjs} +6 -6
  7. package/dist/{chunk-CFNE6XRA.mjs.map → chunk-PLUG6UUI.mjs.map} +1 -1
  8. package/dist/{chunk-JDZB5NGY.mjs → chunk-X47RW7XN.mjs} +3 -3
  9. package/dist/chunk-X47RW7XN.mjs.map +1 -0
  10. package/dist/{compiler-E6HYL477.mjs → compiler-V2BLOB2B.mjs} +3 -3
  11. package/dist/{compiler-E6HYL477.mjs.map → compiler-V2BLOB2B.mjs.map} +1 -1
  12. package/dist/index.cjs +77 -3
  13. package/dist/index.cjs.map +1 -1
  14. package/dist/index.mjs +3 -3
  15. package/dist/{scaffoldCatalog-MEB5DEPL.mjs → scaffoldCatalog-GZUXAEGJ.mjs} +3 -3
  16. package/dist/{scaffoldCatalog-MEB5DEPL.mjs.map → scaffoldCatalog-GZUXAEGJ.mjs.map} +1 -1
  17. package/dist/web/playground/assets/main-DyocvczK.js +209 -0
  18. package/dist/web/playground/assets/main-ff0QOvsL.css +2 -0
  19. package/dist/web/playground/assets/seedSync.worker-CNP45WoU.js +16 -0
  20. package/dist/web/playground/assets/{statementBuilderFlow-JlPDGxmn.js → statementBuilderFlow-BVI_QsJW.js} +2 -2
  21. package/dist/web/playground/assets/{vendor-BFExl-KH.js → vendor-C_ZAMcXI.js} +62 -62
  22. package/dist/web/{server/assets/vendor-codemirror-BojMZ9SI.js → playground/assets/vendor-codemirror--vyd63e6.js} +2 -2
  23. package/dist/web/playground/index.html +4 -4
  24. package/dist/web/playground/seed/core/apps/playground/app/templates/new-playground.json +39 -0
  25. package/dist/web/playground/seed/core/chunks/canvas.ebabc629.json +1 -0
  26. package/dist/web/playground/seed/core/chunks/efforts.cf4c4fbf.json +1 -0
  27. package/dist/web/playground/seed/core/chunks/equipment.6a969adc.json +1 -0
  28. package/dist/web/playground/seed/core/chunks/{template.0120276c.json → template.148e1868.json} +1 -1
  29. package/dist/web/playground/seed/core/indexes/notebooks/canvas.json +792 -0
  30. package/dist/web/playground/seed/core/indexes/notebooks/efforts.json +1458 -0
  31. package/dist/web/playground/seed/core/indexes/notebooks/equipment.json +216 -0
  32. package/dist/web/playground/seed/core/indexes/notebooks/template.json +18 -0
  33. package/dist/web/playground/seed/core/manifest.json +2501 -15
  34. package/dist/web/playground/seed/core/markdown/canvas/ai-first/README.json +11 -0
  35. package/dist/web/playground/seed/core/markdown/canvas/guide/README.json +62 -0
  36. package/dist/web/playground/seed/core/markdown/canvas/guide/clock.json +11 -0
  37. package/dist/web/playground/seed/core/markdown/canvas/guide/dashboards.json +39 -0
  38. package/dist/web/playground/seed/core/markdown/canvas/guide/metrics.json +195 -0
  39. package/dist/web/playground/seed/core/markdown/canvas/guide/protocols.json +313 -0
  40. package/dist/web/playground/seed/core/markdown/canvas/guide/sessions.json +431 -0
  41. package/dist/web/playground/seed/core/markdown/canvas/guide/start.json +177 -0
  42. package/dist/web/playground/seed/core/markdown/canvas/guide/structure.json +335 -0
  43. package/dist/web/playground/seed/core/markdown/canvas/guide/wql.json +117 -0
  44. package/dist/web/playground/seed/core/markdown/canvas/home/README.json +11 -0
  45. package/dist/web/playground/seed/core/markdown/canvas/home/sample-script.json +62 -0
  46. package/dist/web/playground/seed/core/markdown/canvas/home/welcome-1.json +40 -0
  47. package/dist/web/playground/seed/core/markdown/canvas/syntax/actions-comments.json +62 -0
  48. package/dist/web/playground/seed/core/markdown/canvas/syntax/alternating-emom.json +72 -0
  49. package/dist/web/playground/seed/core/markdown/canvas/syntax/basic-emom.json +62 -0
  50. package/dist/web/playground/seed/core/markdown/canvas/syntax/calculated-metrics.json +62 -0
  51. package/dist/web/playground/seed/core/markdown/canvas/syntax/classic-amrap.json +82 -0
  52. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-barbell-cycling.json +62 -0
  53. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-full-session.json +112 -0
  54. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-nested-protocols.json +92 -0
  55. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-partner-workout.json +92 -0
  56. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-swimming.json +51 -0
  57. package/dist/web/playground/seed/core/markdown/canvas/syntax/core-rules.json +61 -0
  58. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-and-calculated-metrics.json +109 -0
  59. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-intervals.json +62 -0
  60. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-1.json +62 -0
  61. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-2.json +72 -0
  62. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-3.json +40 -0
  63. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-4.json +62 -0
  64. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-5.json +62 -0
  65. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-climb-bouldering.json +41 -0
  66. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-climb-hangboard.json +41 -0
  67. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-climb-sport.json +41 -0
  68. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-log.json +62 -0
  69. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-plan.json +102 -0
  70. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-wod.json +71 -0
  71. package/dist/web/playground/seed/core/markdown/canvas/syntax/distance-intervals.json +51 -0
  72. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-1.json +61 -0
  73. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-2.json +72 -0
  74. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-3.json +139 -0
  75. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-4.json +62 -0
  76. package/dist/web/playground/seed/core/markdown/canvas/syntax/effort-notes.json +62 -0
  77. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-1.json +71 -0
  78. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-2.json +82 -0
  79. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-3.json +51 -0
  80. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-4.json +51 -0
  81. package/dist/web/playground/seed/core/markdown/canvas/syntax/longer-duration.json +62 -0
  82. package/dist/web/playground/seed/core/markdown/canvas/syntax/longer-intervals.json +62 -0
  83. package/dist/web/playground/seed/core/markdown/canvas/syntax/measurements.json +62 -0
  84. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-1.json +71 -0
  85. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-2.json +92 -0
  86. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-3.json +102 -0
  87. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-4.json +72 -0
  88. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-5.json +72 -0
  89. package/dist/web/playground/seed/core/markdown/canvas/syntax/mixed-sections.json +102 -0
  90. package/dist/web/playground/seed/core/markdown/canvas/syntax/mixed-timers.json +71 -0
  91. package/dist/web/playground/seed/core/markdown/canvas/syntax/multiple-amrap-windows.json +92 -0
  92. package/dist/web/playground/seed/core/markdown/canvas/syntax/multiple-sets.json +62 -0
  93. package/dist/web/playground/seed/core/markdown/canvas/syntax/named-groups.json +72 -0
  94. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-1.json +82 -0
  95. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-2.json +62 -0
  96. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-3.json +82 -0
  97. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-4.json +51 -0
  98. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-5.json +62 -0
  99. package/dist/web/playground/seed/core/markdown/canvas/syntax/single-movement.json +51 -0
  100. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-1.json +62 -0
  101. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-2.json +72 -0
  102. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-3.json +62 -0
  103. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-4.json +62 -0
  104. package/dist/web/playground/seed/core/markdown/canvas/syntax/time-cap.json +82 -0
  105. package/dist/web/playground/seed/core/markdown/canvas/syntax/timer-modifiers.json +82 -0
  106. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-1.json +82 -0
  107. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-2.json +62 -0
  108. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-3.json +51 -0
  109. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-4.json +62 -0
  110. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-5.json +71 -0
  111. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-rest.json +61 -0
  112. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/aggregate-by-effort.json +38 -0
  113. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/aggregate-by-week.json +38 -0
  114. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/content-fran.json +38 -0
  115. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/filter-combos.json +38 -0
  116. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/pipes-limit.json +38 -0
  117. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/session-rpe.json +38 -0
  118. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/source-journal.json +38 -0
  119. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/tis-trend.json +38 -0
  120. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/where-join.json +38 -0
  121. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/air-squat.json +11 -0
  122. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/box-jump.json +11 -0
  123. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/broad-jump.json +11 -0
  124. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/burpee-box-jump-over.json +11 -0
  125. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/burpee-over-dumbbell.json +11 -0
  126. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/burpee.json +11 -0
  127. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/dumbbell-squat-clean.json +11 -0
  128. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/ghd-sit-up.json +11 -0
  129. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/ground-kong.json +11 -0
  130. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/jumping-jack.json +11 -0
  131. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/kong-walk.json +11 -0
  132. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/lunge.json +11 -0
  133. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/overhead-squat.json +11 -0
  134. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/parkour-roll.json +11 -0
  135. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/parkour-squat.json +11 -0
  136. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/pistol-squat.json +11 -0
  137. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/plank.json +11 -0
  138. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/precision-burpee.json +11 -0
  139. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/precision-jump.json +11 -0
  140. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/quadrupedal-movement.json +11 -0
  141. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/russian-twist.json +11 -0
  142. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/sit-up.json +11 -0
  143. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/squat-clean.json +11 -0
  144. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/squat-hold.json +11 -0
  145. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/squat-snatch.json +11 -0
  146. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/tuck-jump.json +11 -0
  147. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/wall-ball.json +11 -0
  148. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/wall-burpee.json +11 -0
  149. package/dist/web/playground/seed/core/markdown/efforts/cycling/assault-bike.json +11 -0
  150. package/dist/web/playground/seed/core/markdown/efforts/cycling/cycling-moderate.json +11 -0
  151. package/dist/web/playground/seed/core/markdown/efforts/cycling/cycling-vigorous.json +11 -0
  152. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/assisted-pull-up.json +11 -0
  153. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/burpee-pull-up.json +11 -0
  154. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/chest-to-bar-pull-up.json +11 -0
  155. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/dip.json +11 -0
  156. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/double-under.json +11 -0
  157. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/handstand-hold.json +11 -0
  158. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/handstand-push-up.json +11 -0
  159. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/handstand-walk.json +11 -0
  160. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/jump-rope.json +11 -0
  161. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/jumping-pull-up.json +11 -0
  162. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/jumping-push-up.json +11 -0
  163. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/l-sit-pull-up.json +11 -0
  164. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/muscle-up.json +11 -0
  165. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/pull-up.json +11 -0
  166. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/push-up.json +11 -0
  167. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/reverse-wall-dip.json +11 -0
  168. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/rope-climb.json +11 -0
  169. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/toes-to-bar.json +11 -0
  170. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-arm-bar.json +11 -0
  171. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-around-the-world.json +11 -0
  172. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-bent-over-row.json +11 -0
  173. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-jerk.json +11 -0
  174. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-press.json +11 -0
  175. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-clean.json +11 -0
  176. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-deadlift.json +11 -0
  177. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-floor-press.json +11 -0
  178. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-front-squat.json +11 -0
  179. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-goblet-squat.json +11 -0
  180. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-gorilla-row.json +11 -0
  181. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-halo.json +11 -0
  182. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-jerk.json +11 -0
  183. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-overhead-squat.json +11 -0
  184. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-press.json +11 -0
  185. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-snatch.json +11 -0
  186. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-swing.json +11 -0
  187. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-windmill.json +11 -0
  188. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/turkish-get-up.json +11 -0
  189. package/dist/web/playground/seed/core/markdown/efforts/recovery/rest.json +11 -0
  190. package/dist/web/playground/seed/core/markdown/efforts/recovery/stretching.json +11 -0
  191. package/dist/web/playground/seed/core/markdown/efforts/rowing/rowing-sprint.json +11 -0
  192. package/dist/web/playground/seed/core/markdown/efforts/rowing/rowing.json +11 -0
  193. package/dist/web/playground/seed/core/markdown/efforts/rowing/ski-erg.json +11 -0
  194. package/dist/web/playground/seed/core/markdown/efforts/running/backward-running.json +11 -0
  195. package/dist/web/playground/seed/core/markdown/efforts/running/running-6-mph.json +11 -0
  196. package/dist/web/playground/seed/core/markdown/efforts/running/running-8-mph.json +11 -0
  197. package/dist/web/playground/seed/core/markdown/efforts/running/running-sprint.json +11 -0
  198. package/dist/web/playground/seed/core/markdown/efforts/snatch.json +40 -0
  199. package/dist/web/playground/seed/core/markdown/efforts/strength/back-squat.json +11 -0
  200. package/dist/web/playground/seed/core/markdown/efforts/strength/bench-press.json +11 -0
  201. package/dist/web/playground/seed/core/markdown/efforts/strength/box-step-up.json +11 -0
  202. package/dist/web/playground/seed/core/markdown/efforts/strength/carioca.json +11 -0
  203. package/dist/web/playground/seed/core/markdown/efforts/strength/clean-and-jerk.json +11 -0
  204. package/dist/web/playground/seed/core/markdown/efforts/strength/cluster.json +11 -0
  205. package/dist/web/playground/seed/core/markdown/efforts/strength/dead-hang.json +11 -0
  206. package/dist/web/playground/seed/core/markdown/efforts/strength/deadlift.json +11 -0
  207. package/dist/web/playground/seed/core/markdown/efforts/strength/devils-press.json +11 -0
  208. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-box-step-up.json +11 -0
  209. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-clean.json +11 -0
  210. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-fly.json +11 -0
  211. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-row.json +11 -0
  212. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-snatch.json +11 -0
  213. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-thruster.json +11 -0
  214. package/dist/web/playground/seed/core/markdown/efforts/strength/elbows-to-knees.json +11 -0
  215. package/dist/web/playground/seed/core/markdown/efforts/strength/farmer-carry.json +11 -0
  216. package/dist/web/playground/seed/core/markdown/efforts/strength/frog-stand.json +11 -0
  217. package/dist/web/playground/seed/core/markdown/efforts/strength/front-squat.json +11 -0
  218. package/dist/web/playground/seed/core/markdown/efforts/strength/good-morning.json +11 -0
  219. package/dist/web/playground/seed/core/markdown/efforts/strength/hanging-leg-raise.json +11 -0
  220. package/dist/web/playground/seed/core/markdown/efforts/strength/hollow-rock.json +11 -0
  221. package/dist/web/playground/seed/core/markdown/efforts/strength/knees-to-elbows.json +11 -0
  222. package/dist/web/playground/seed/core/markdown/efforts/strength/l-sit.json +11 -0
  223. package/dist/web/playground/seed/core/markdown/efforts/strength/man-maker.json +11 -0
  224. package/dist/web/playground/seed/core/markdown/efforts/strength/medicine-ball-clean.json +11 -0
  225. package/dist/web/playground/seed/core/markdown/efforts/strength/overhead-press.json +11 -0
  226. package/dist/web/playground/seed/core/markdown/efforts/strength/parkour-vault.json +11 -0
  227. package/dist/web/playground/seed/core/markdown/efforts/strength/pig-flip.json +11 -0
  228. package/dist/web/playground/seed/core/markdown/efforts/strength/power-clean.json +11 -0
  229. package/dist/web/playground/seed/core/markdown/efforts/strength/power-snatch.json +11 -0
  230. package/dist/web/playground/seed/core/markdown/efforts/strength/push-jerk.json +11 -0
  231. package/dist/web/playground/seed/core/markdown/efforts/strength/push-press.json +11 -0
  232. package/dist/web/playground/seed/core/markdown/efforts/strength/romanian-deadlift.json +11 -0
  233. package/dist/web/playground/seed/core/markdown/efforts/strength/single-leg-deadlift.json +11 -0
  234. package/dist/web/playground/seed/core/markdown/efforts/strength/skull-crusher.json +11 -0
  235. package/dist/web/playground/seed/core/markdown/efforts/strength/slam-ball.json +11 -0
  236. package/dist/web/playground/seed/core/markdown/efforts/strength/sled-pull.json +11 -0
  237. package/dist/web/playground/seed/core/markdown/efforts/strength/sled-push.json +11 -0
  238. package/dist/web/playground/seed/core/markdown/efforts/strength/sumo-deadlift.json +11 -0
  239. package/dist/web/playground/seed/core/markdown/efforts/strength/thruster.json +11 -0
  240. package/dist/web/playground/seed/core/markdown/efforts/strength/triceps-extension.json +11 -0
  241. package/dist/web/playground/seed/core/markdown/efforts/strength/v-sit-hold.json +11 -0
  242. package/dist/web/playground/seed/core/markdown/efforts/strength/wall-walk.json +11 -0
  243. package/dist/web/playground/seed/core/markdown/efforts/strength/yoga-sun-salutation.json +11 -0
  244. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-assisted-sprint.json +11 -0
  245. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-backstroke.json +11 -0
  246. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-breaststroke-kick.json +11 -0
  247. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-breaststroke.json +11 -0
  248. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-butterfly.json +11 -0
  249. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-catch-up-drill.json +11 -0
  250. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-choice-stroke.json +11 -0
  251. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-dive-start.json +11 -0
  252. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-dolphin-kick.json +11 -0
  253. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-drafting.json +11 -0
  254. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-fingertip-drag.json +11 -0
  255. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-freestyle.json +11 -0
  256. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-individual-medley.json +11 -0
  257. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-kick.json +11 -0
  258. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-pull.json +11 -0
  259. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-resisted-sprint.json +11 -0
  260. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-rotation-drill.json +11 -0
  261. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-sighting.json +11 -0
  262. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-single-arm-drill.json +11 -0
  263. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-stroke-transition.json +11 -0
  264. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-two-kick-one-pull.json +11 -0
  265. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-vigorous.json +11 -0
  266. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming.json +11 -0
  267. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-arm-cast.json +11 -0
  268. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-circles.json +11 -0
  269. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-mill.json +11 -0
  270. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-reverse-mill.json +11 -0
  271. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-shield-cast.json +11 -0
  272. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-10-to-2-swing.json +11 -0
  273. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-360-swing.json +11 -0
  274. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-barbarian-squat.json +11 -0
  275. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-flow.json +11 -0
  276. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-gravedigger.json +11 -0
  277. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-touchdown.json +11 -0
  278. package/dist/web/playground/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-carry.json +11 -0
  279. package/dist/web/playground/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-extension.json +11 -0
  280. package/dist/web/playground/seed/core/markdown/efforts/unconventional/sandbag-over-shoulder.json +11 -0
  281. package/dist/web/playground/seed/core/markdown/efforts/walking/walking-3-mph.json +11 -0
  282. package/dist/web/playground/seed/core/markdown/equipment/air-bike.json +11 -0
  283. package/dist/web/playground/seed/core/markdown/equipment/barbell.json +11 -0
  284. package/dist/web/playground/seed/core/markdown/equipment/bench.json +11 -0
  285. package/dist/web/playground/seed/core/markdown/equipment/bike-erg.json +11 -0
  286. package/dist/web/playground/seed/core/markdown/equipment/climbing-rope.json +11 -0
  287. package/dist/web/playground/seed/core/markdown/equipment/clubs.json +11 -0
  288. package/dist/web/playground/seed/core/markdown/equipment/dumbbell.json +11 -0
  289. package/dist/web/playground/seed/core/markdown/equipment/ghd.json +11 -0
  290. package/dist/web/playground/seed/core/markdown/equipment/gymnastic-rings.json +11 -0
  291. package/dist/web/playground/seed/core/markdown/equipment/jump-rope.json +11 -0
  292. package/dist/web/playground/seed/core/markdown/equipment/kettlebell.json +11 -0
  293. package/dist/web/playground/seed/core/markdown/equipment/macebell.json +11 -0
  294. package/dist/web/playground/seed/core/markdown/equipment/medicine-ball.json +11 -0
  295. package/dist/web/playground/seed/core/markdown/equipment/parallettes.json +11 -0
  296. package/dist/web/playground/seed/core/markdown/equipment/plyo-box.json +11 -0
  297. package/dist/web/playground/seed/core/markdown/equipment/pull-up-bar.json +11 -0
  298. package/dist/web/playground/seed/core/markdown/equipment/rower.json +11 -0
  299. package/dist/web/playground/seed/core/markdown/equipment/sandbag.json +11 -0
  300. package/dist/web/playground/seed/core/markdown/equipment/ski-erg.json +11 -0
  301. package/dist/web/playground/seed/core/markdown/equipment/slam-ball.json +11 -0
  302. package/dist/web/playground/seed/core/markdown/equipment/sled.json +11 -0
  303. package/dist/web/playground/seed/core/markdown/equipment/sledgehammer.json +11 -0
  304. package/dist/web/playground/seed/core/markdown/equipment/weight-vest.json +11 -0
  305. package/dist/web/playground/seed/core/report.html +14 -14
  306. package/dist/web/server/assets/main-DAOSDjmL.js +209 -0
  307. package/dist/web/server/assets/main-ff0QOvsL.css +2 -0
  308. package/dist/web/server/assets/seedSync.worker-CNP45WoU.js +16 -0
  309. package/dist/web/server/assets/{statementBuilderFlow-CSr1SnnN.js → statementBuilderFlow-BzUkv_67.js} +2 -2
  310. package/dist/web/server/assets/{vendor-BFExl-KH.js → vendor-C_ZAMcXI.js} +62 -62
  311. package/dist/web/{playground/assets/vendor-codemirror-BojMZ9SI.js → server/assets/vendor-codemirror--vyd63e6.js} +2 -2
  312. package/dist/web/server/index.html +4 -4
  313. package/dist/web/server/seed/core/apps/playground/app/templates/new-playground.json +39 -0
  314. package/dist/web/server/seed/core/chunks/canvas.ebabc629.json +1 -0
  315. package/dist/web/server/seed/core/chunks/efforts.cf4c4fbf.json +1 -0
  316. package/dist/web/server/seed/core/chunks/equipment.6a969adc.json +1 -0
  317. package/dist/web/server/seed/core/chunks/{template.0120276c.json → template.148e1868.json} +1 -1
  318. package/dist/web/server/seed/core/indexes/notebooks/canvas.json +792 -0
  319. package/dist/web/server/seed/core/indexes/notebooks/efforts.json +1458 -0
  320. package/dist/web/server/seed/core/indexes/notebooks/equipment.json +216 -0
  321. package/dist/web/server/seed/core/indexes/notebooks/template.json +18 -0
  322. package/dist/web/server/seed/core/manifest.json +2501 -15
  323. package/dist/web/server/seed/core/markdown/canvas/ai-first/README.json +11 -0
  324. package/dist/web/server/seed/core/markdown/canvas/guide/README.json +62 -0
  325. package/dist/web/server/seed/core/markdown/canvas/guide/clock.json +11 -0
  326. package/dist/web/server/seed/core/markdown/canvas/guide/dashboards.json +39 -0
  327. package/dist/web/server/seed/core/markdown/canvas/guide/metrics.json +195 -0
  328. package/dist/web/server/seed/core/markdown/canvas/guide/protocols.json +313 -0
  329. package/dist/web/server/seed/core/markdown/canvas/guide/sessions.json +431 -0
  330. package/dist/web/server/seed/core/markdown/canvas/guide/start.json +177 -0
  331. package/dist/web/server/seed/core/markdown/canvas/guide/structure.json +335 -0
  332. package/dist/web/server/seed/core/markdown/canvas/guide/wql.json +117 -0
  333. package/dist/web/server/seed/core/markdown/canvas/home/README.json +11 -0
  334. package/dist/web/server/seed/core/markdown/canvas/home/sample-script.json +62 -0
  335. package/dist/web/server/seed/core/markdown/canvas/home/welcome-1.json +40 -0
  336. package/dist/web/server/seed/core/markdown/canvas/syntax/actions-comments.json +62 -0
  337. package/dist/web/server/seed/core/markdown/canvas/syntax/alternating-emom.json +72 -0
  338. package/dist/web/server/seed/core/markdown/canvas/syntax/basic-emom.json +62 -0
  339. package/dist/web/server/seed/core/markdown/canvas/syntax/calculated-metrics.json +62 -0
  340. package/dist/web/server/seed/core/markdown/canvas/syntax/classic-amrap.json +82 -0
  341. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-barbell-cycling.json +62 -0
  342. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-full-session.json +112 -0
  343. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-nested-protocols.json +92 -0
  344. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-partner-workout.json +92 -0
  345. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-swimming.json +51 -0
  346. package/dist/web/server/seed/core/markdown/canvas/syntax/core-rules.json +61 -0
  347. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-and-calculated-metrics.json +109 -0
  348. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-intervals.json +62 -0
  349. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-1.json +62 -0
  350. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-2.json +72 -0
  351. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-3.json +40 -0
  352. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-4.json +62 -0
  353. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-5.json +62 -0
  354. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-climb-bouldering.json +41 -0
  355. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-climb-hangboard.json +41 -0
  356. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-climb-sport.json +41 -0
  357. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-log.json +62 -0
  358. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-plan.json +102 -0
  359. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-wod.json +71 -0
  360. package/dist/web/server/seed/core/markdown/canvas/syntax/distance-intervals.json +51 -0
  361. package/dist/web/server/seed/core/markdown/canvas/syntax/document-1.json +61 -0
  362. package/dist/web/server/seed/core/markdown/canvas/syntax/document-2.json +72 -0
  363. package/dist/web/server/seed/core/markdown/canvas/syntax/document-3.json +139 -0
  364. package/dist/web/server/seed/core/markdown/canvas/syntax/document-4.json +62 -0
  365. package/dist/web/server/seed/core/markdown/canvas/syntax/effort-notes.json +62 -0
  366. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-1.json +71 -0
  367. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-2.json +82 -0
  368. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-3.json +51 -0
  369. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-4.json +51 -0
  370. package/dist/web/server/seed/core/markdown/canvas/syntax/longer-duration.json +62 -0
  371. package/dist/web/server/seed/core/markdown/canvas/syntax/longer-intervals.json +62 -0
  372. package/dist/web/server/seed/core/markdown/canvas/syntax/measurements.json +62 -0
  373. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-1.json +71 -0
  374. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-2.json +92 -0
  375. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-3.json +102 -0
  376. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-4.json +72 -0
  377. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-5.json +72 -0
  378. package/dist/web/server/seed/core/markdown/canvas/syntax/mixed-sections.json +102 -0
  379. package/dist/web/server/seed/core/markdown/canvas/syntax/mixed-timers.json +71 -0
  380. package/dist/web/server/seed/core/markdown/canvas/syntax/multiple-amrap-windows.json +92 -0
  381. package/dist/web/server/seed/core/markdown/canvas/syntax/multiple-sets.json +62 -0
  382. package/dist/web/server/seed/core/markdown/canvas/syntax/named-groups.json +72 -0
  383. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-1.json +82 -0
  384. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-2.json +62 -0
  385. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-3.json +82 -0
  386. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-4.json +51 -0
  387. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-5.json +62 -0
  388. package/dist/web/server/seed/core/markdown/canvas/syntax/single-movement.json +51 -0
  389. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-1.json +62 -0
  390. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-2.json +72 -0
  391. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-3.json +62 -0
  392. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-4.json +62 -0
  393. package/dist/web/server/seed/core/markdown/canvas/syntax/time-cap.json +82 -0
  394. package/dist/web/server/seed/core/markdown/canvas/syntax/timer-modifiers.json +82 -0
  395. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-1.json +82 -0
  396. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-2.json +62 -0
  397. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-3.json +51 -0
  398. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-4.json +62 -0
  399. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-5.json +71 -0
  400. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-rest.json +61 -0
  401. package/dist/web/server/seed/core/markdown/canvas/wql-presets/aggregate-by-effort.json +38 -0
  402. package/dist/web/server/seed/core/markdown/canvas/wql-presets/aggregate-by-week.json +38 -0
  403. package/dist/web/server/seed/core/markdown/canvas/wql-presets/content-fran.json +38 -0
  404. package/dist/web/server/seed/core/markdown/canvas/wql-presets/filter-combos.json +38 -0
  405. package/dist/web/server/seed/core/markdown/canvas/wql-presets/pipes-limit.json +38 -0
  406. package/dist/web/server/seed/core/markdown/canvas/wql-presets/session-rpe.json +38 -0
  407. package/dist/web/server/seed/core/markdown/canvas/wql-presets/source-journal.json +38 -0
  408. package/dist/web/server/seed/core/markdown/canvas/wql-presets/tis-trend.json +38 -0
  409. package/dist/web/server/seed/core/markdown/canvas/wql-presets/where-join.json +38 -0
  410. package/dist/web/server/seed/core/markdown/efforts/bodyweight/air-squat.json +11 -0
  411. package/dist/web/server/seed/core/markdown/efforts/bodyweight/box-jump.json +11 -0
  412. package/dist/web/server/seed/core/markdown/efforts/bodyweight/broad-jump.json +11 -0
  413. package/dist/web/server/seed/core/markdown/efforts/bodyweight/burpee-box-jump-over.json +11 -0
  414. package/dist/web/server/seed/core/markdown/efforts/bodyweight/burpee-over-dumbbell.json +11 -0
  415. package/dist/web/server/seed/core/markdown/efforts/bodyweight/burpee.json +11 -0
  416. package/dist/web/server/seed/core/markdown/efforts/bodyweight/dumbbell-squat-clean.json +11 -0
  417. package/dist/web/server/seed/core/markdown/efforts/bodyweight/ghd-sit-up.json +11 -0
  418. package/dist/web/server/seed/core/markdown/efforts/bodyweight/ground-kong.json +11 -0
  419. package/dist/web/server/seed/core/markdown/efforts/bodyweight/jumping-jack.json +11 -0
  420. package/dist/web/server/seed/core/markdown/efforts/bodyweight/kong-walk.json +11 -0
  421. package/dist/web/server/seed/core/markdown/efforts/bodyweight/lunge.json +11 -0
  422. package/dist/web/server/seed/core/markdown/efforts/bodyweight/overhead-squat.json +11 -0
  423. package/dist/web/server/seed/core/markdown/efforts/bodyweight/parkour-roll.json +11 -0
  424. package/dist/web/server/seed/core/markdown/efforts/bodyweight/parkour-squat.json +11 -0
  425. package/dist/web/server/seed/core/markdown/efforts/bodyweight/pistol-squat.json +11 -0
  426. package/dist/web/server/seed/core/markdown/efforts/bodyweight/plank.json +11 -0
  427. package/dist/web/server/seed/core/markdown/efforts/bodyweight/precision-burpee.json +11 -0
  428. package/dist/web/server/seed/core/markdown/efforts/bodyweight/precision-jump.json +11 -0
  429. package/dist/web/server/seed/core/markdown/efforts/bodyweight/quadrupedal-movement.json +11 -0
  430. package/dist/web/server/seed/core/markdown/efforts/bodyweight/russian-twist.json +11 -0
  431. package/dist/web/server/seed/core/markdown/efforts/bodyweight/sit-up.json +11 -0
  432. package/dist/web/server/seed/core/markdown/efforts/bodyweight/squat-clean.json +11 -0
  433. package/dist/web/server/seed/core/markdown/efforts/bodyweight/squat-hold.json +11 -0
  434. package/dist/web/server/seed/core/markdown/efforts/bodyweight/squat-snatch.json +11 -0
  435. package/dist/web/server/seed/core/markdown/efforts/bodyweight/tuck-jump.json +11 -0
  436. package/dist/web/server/seed/core/markdown/efforts/bodyweight/wall-ball.json +11 -0
  437. package/dist/web/server/seed/core/markdown/efforts/bodyweight/wall-burpee.json +11 -0
  438. package/dist/web/server/seed/core/markdown/efforts/cycling/assault-bike.json +11 -0
  439. package/dist/web/server/seed/core/markdown/efforts/cycling/cycling-moderate.json +11 -0
  440. package/dist/web/server/seed/core/markdown/efforts/cycling/cycling-vigorous.json +11 -0
  441. package/dist/web/server/seed/core/markdown/efforts/gymnastics/assisted-pull-up.json +11 -0
  442. package/dist/web/server/seed/core/markdown/efforts/gymnastics/burpee-pull-up.json +11 -0
  443. package/dist/web/server/seed/core/markdown/efforts/gymnastics/chest-to-bar-pull-up.json +11 -0
  444. package/dist/web/server/seed/core/markdown/efforts/gymnastics/dip.json +11 -0
  445. package/dist/web/server/seed/core/markdown/efforts/gymnastics/double-under.json +11 -0
  446. package/dist/web/server/seed/core/markdown/efforts/gymnastics/handstand-hold.json +11 -0
  447. package/dist/web/server/seed/core/markdown/efforts/gymnastics/handstand-push-up.json +11 -0
  448. package/dist/web/server/seed/core/markdown/efforts/gymnastics/handstand-walk.json +11 -0
  449. package/dist/web/server/seed/core/markdown/efforts/gymnastics/jump-rope.json +11 -0
  450. package/dist/web/server/seed/core/markdown/efforts/gymnastics/jumping-pull-up.json +11 -0
  451. package/dist/web/server/seed/core/markdown/efforts/gymnastics/jumping-push-up.json +11 -0
  452. package/dist/web/server/seed/core/markdown/efforts/gymnastics/l-sit-pull-up.json +11 -0
  453. package/dist/web/server/seed/core/markdown/efforts/gymnastics/muscle-up.json +11 -0
  454. package/dist/web/server/seed/core/markdown/efforts/gymnastics/pull-up.json +11 -0
  455. package/dist/web/server/seed/core/markdown/efforts/gymnastics/push-up.json +11 -0
  456. package/dist/web/server/seed/core/markdown/efforts/gymnastics/reverse-wall-dip.json +11 -0
  457. package/dist/web/server/seed/core/markdown/efforts/gymnastics/rope-climb.json +11 -0
  458. package/dist/web/server/seed/core/markdown/efforts/gymnastics/toes-to-bar.json +11 -0
  459. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-arm-bar.json +11 -0
  460. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-around-the-world.json +11 -0
  461. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-bent-over-row.json +11 -0
  462. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-jerk.json +11 -0
  463. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-press.json +11 -0
  464. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-clean.json +11 -0
  465. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-deadlift.json +11 -0
  466. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-floor-press.json +11 -0
  467. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-front-squat.json +11 -0
  468. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-goblet-squat.json +11 -0
  469. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-gorilla-row.json +11 -0
  470. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-halo.json +11 -0
  471. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-jerk.json +11 -0
  472. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-overhead-squat.json +11 -0
  473. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-press.json +11 -0
  474. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-snatch.json +11 -0
  475. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-swing.json +11 -0
  476. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-windmill.json +11 -0
  477. package/dist/web/server/seed/core/markdown/efforts/kettlebell/turkish-get-up.json +11 -0
  478. package/dist/web/server/seed/core/markdown/efforts/recovery/rest.json +11 -0
  479. package/dist/web/server/seed/core/markdown/efforts/recovery/stretching.json +11 -0
  480. package/dist/web/server/seed/core/markdown/efforts/rowing/rowing-sprint.json +11 -0
  481. package/dist/web/server/seed/core/markdown/efforts/rowing/rowing.json +11 -0
  482. package/dist/web/server/seed/core/markdown/efforts/rowing/ski-erg.json +11 -0
  483. package/dist/web/server/seed/core/markdown/efforts/running/backward-running.json +11 -0
  484. package/dist/web/server/seed/core/markdown/efforts/running/running-6-mph.json +11 -0
  485. package/dist/web/server/seed/core/markdown/efforts/running/running-8-mph.json +11 -0
  486. package/dist/web/server/seed/core/markdown/efforts/running/running-sprint.json +11 -0
  487. package/dist/web/server/seed/core/markdown/efforts/snatch.json +40 -0
  488. package/dist/web/server/seed/core/markdown/efforts/strength/back-squat.json +11 -0
  489. package/dist/web/server/seed/core/markdown/efforts/strength/bench-press.json +11 -0
  490. package/dist/web/server/seed/core/markdown/efforts/strength/box-step-up.json +11 -0
  491. package/dist/web/server/seed/core/markdown/efforts/strength/carioca.json +11 -0
  492. package/dist/web/server/seed/core/markdown/efforts/strength/clean-and-jerk.json +11 -0
  493. package/dist/web/server/seed/core/markdown/efforts/strength/cluster.json +11 -0
  494. package/dist/web/server/seed/core/markdown/efforts/strength/dead-hang.json +11 -0
  495. package/dist/web/server/seed/core/markdown/efforts/strength/deadlift.json +11 -0
  496. package/dist/web/server/seed/core/markdown/efforts/strength/devils-press.json +11 -0
  497. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-box-step-up.json +11 -0
  498. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-clean.json +11 -0
  499. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-fly.json +11 -0
  500. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-row.json +11 -0
  501. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-snatch.json +11 -0
  502. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-thruster.json +11 -0
  503. package/dist/web/server/seed/core/markdown/efforts/strength/elbows-to-knees.json +11 -0
  504. package/dist/web/server/seed/core/markdown/efforts/strength/farmer-carry.json +11 -0
  505. package/dist/web/server/seed/core/markdown/efforts/strength/frog-stand.json +11 -0
  506. package/dist/web/server/seed/core/markdown/efforts/strength/front-squat.json +11 -0
  507. package/dist/web/server/seed/core/markdown/efforts/strength/good-morning.json +11 -0
  508. package/dist/web/server/seed/core/markdown/efforts/strength/hanging-leg-raise.json +11 -0
  509. package/dist/web/server/seed/core/markdown/efforts/strength/hollow-rock.json +11 -0
  510. package/dist/web/server/seed/core/markdown/efforts/strength/knees-to-elbows.json +11 -0
  511. package/dist/web/server/seed/core/markdown/efforts/strength/l-sit.json +11 -0
  512. package/dist/web/server/seed/core/markdown/efforts/strength/man-maker.json +11 -0
  513. package/dist/web/server/seed/core/markdown/efforts/strength/medicine-ball-clean.json +11 -0
  514. package/dist/web/server/seed/core/markdown/efforts/strength/overhead-press.json +11 -0
  515. package/dist/web/server/seed/core/markdown/efforts/strength/parkour-vault.json +11 -0
  516. package/dist/web/server/seed/core/markdown/efforts/strength/pig-flip.json +11 -0
  517. package/dist/web/server/seed/core/markdown/efforts/strength/power-clean.json +11 -0
  518. package/dist/web/server/seed/core/markdown/efforts/strength/power-snatch.json +11 -0
  519. package/dist/web/server/seed/core/markdown/efforts/strength/push-jerk.json +11 -0
  520. package/dist/web/server/seed/core/markdown/efforts/strength/push-press.json +11 -0
  521. package/dist/web/server/seed/core/markdown/efforts/strength/romanian-deadlift.json +11 -0
  522. package/dist/web/server/seed/core/markdown/efforts/strength/single-leg-deadlift.json +11 -0
  523. package/dist/web/server/seed/core/markdown/efforts/strength/skull-crusher.json +11 -0
  524. package/dist/web/server/seed/core/markdown/efforts/strength/slam-ball.json +11 -0
  525. package/dist/web/server/seed/core/markdown/efforts/strength/sled-pull.json +11 -0
  526. package/dist/web/server/seed/core/markdown/efforts/strength/sled-push.json +11 -0
  527. package/dist/web/server/seed/core/markdown/efforts/strength/sumo-deadlift.json +11 -0
  528. package/dist/web/server/seed/core/markdown/efforts/strength/thruster.json +11 -0
  529. package/dist/web/server/seed/core/markdown/efforts/strength/triceps-extension.json +11 -0
  530. package/dist/web/server/seed/core/markdown/efforts/strength/v-sit-hold.json +11 -0
  531. package/dist/web/server/seed/core/markdown/efforts/strength/wall-walk.json +11 -0
  532. package/dist/web/server/seed/core/markdown/efforts/strength/yoga-sun-salutation.json +11 -0
  533. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-assisted-sprint.json +11 -0
  534. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-backstroke.json +11 -0
  535. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-breaststroke-kick.json +11 -0
  536. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-breaststroke.json +11 -0
  537. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-butterfly.json +11 -0
  538. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-catch-up-drill.json +11 -0
  539. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-choice-stroke.json +11 -0
  540. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-dive-start.json +11 -0
  541. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-dolphin-kick.json +11 -0
  542. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-drafting.json +11 -0
  543. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-fingertip-drag.json +11 -0
  544. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-freestyle.json +11 -0
  545. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-individual-medley.json +11 -0
  546. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-kick.json +11 -0
  547. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-pull.json +11 -0
  548. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-resisted-sprint.json +11 -0
  549. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-rotation-drill.json +11 -0
  550. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-sighting.json +11 -0
  551. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-single-arm-drill.json +11 -0
  552. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-stroke-transition.json +11 -0
  553. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-two-kick-one-pull.json +11 -0
  554. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-vigorous.json +11 -0
  555. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming.json +11 -0
  556. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-arm-cast.json +11 -0
  557. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-circles.json +11 -0
  558. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-mill.json +11 -0
  559. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-reverse-mill.json +11 -0
  560. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-shield-cast.json +11 -0
  561. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-10-to-2-swing.json +11 -0
  562. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-360-swing.json +11 -0
  563. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-barbarian-squat.json +11 -0
  564. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-flow.json +11 -0
  565. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-gravedigger.json +11 -0
  566. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-touchdown.json +11 -0
  567. package/dist/web/server/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-carry.json +11 -0
  568. package/dist/web/server/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-extension.json +11 -0
  569. package/dist/web/server/seed/core/markdown/efforts/unconventional/sandbag-over-shoulder.json +11 -0
  570. package/dist/web/server/seed/core/markdown/efforts/walking/walking-3-mph.json +11 -0
  571. package/dist/web/server/seed/core/markdown/equipment/air-bike.json +11 -0
  572. package/dist/web/server/seed/core/markdown/equipment/barbell.json +11 -0
  573. package/dist/web/server/seed/core/markdown/equipment/bench.json +11 -0
  574. package/dist/web/server/seed/core/markdown/equipment/bike-erg.json +11 -0
  575. package/dist/web/server/seed/core/markdown/equipment/climbing-rope.json +11 -0
  576. package/dist/web/server/seed/core/markdown/equipment/clubs.json +11 -0
  577. package/dist/web/server/seed/core/markdown/equipment/dumbbell.json +11 -0
  578. package/dist/web/server/seed/core/markdown/equipment/ghd.json +11 -0
  579. package/dist/web/server/seed/core/markdown/equipment/gymnastic-rings.json +11 -0
  580. package/dist/web/server/seed/core/markdown/equipment/jump-rope.json +11 -0
  581. package/dist/web/server/seed/core/markdown/equipment/kettlebell.json +11 -0
  582. package/dist/web/server/seed/core/markdown/equipment/macebell.json +11 -0
  583. package/dist/web/server/seed/core/markdown/equipment/medicine-ball.json +11 -0
  584. package/dist/web/server/seed/core/markdown/equipment/parallettes.json +11 -0
  585. package/dist/web/server/seed/core/markdown/equipment/plyo-box.json +11 -0
  586. package/dist/web/server/seed/core/markdown/equipment/pull-up-bar.json +11 -0
  587. package/dist/web/server/seed/core/markdown/equipment/rower.json +11 -0
  588. package/dist/web/server/seed/core/markdown/equipment/sandbag.json +11 -0
  589. package/dist/web/server/seed/core/markdown/equipment/ski-erg.json +11 -0
  590. package/dist/web/server/seed/core/markdown/equipment/slam-ball.json +11 -0
  591. package/dist/web/server/seed/core/markdown/equipment/sled.json +11 -0
  592. package/dist/web/server/seed/core/markdown/equipment/sledgehammer.json +11 -0
  593. package/dist/web/server/seed/core/markdown/equipment/weight-vest.json +11 -0
  594. package/dist/web/server/seed/core/report.html +14 -14
  595. package/package.json +6 -6
  596. package/dist/chunk-IEW74LUO.mjs.map +0 -1
  597. package/dist/chunk-JDZB5NGY.mjs.map +0 -1
  598. package/dist/web/playground/assets/main-Ci0N8cZU.js +0 -209
  599. package/dist/web/playground/assets/main-ClG3yglx.css +0 -2
  600. package/dist/web/playground/assets/seedSync.worker-Dr-OnZN0.js +0 -16
  601. package/dist/web/playground/seed/core/chunks/canvas.f44b5df1.json +0 -1
  602. package/dist/web/playground/seed/core/chunks/efforts.8a53092f.json +0 -1
  603. package/dist/web/playground/seed/core/chunks/equipment.c45026fc.json +0 -1
  604. package/dist/web/server/assets/main-CWl-p48m.js +0 -209
  605. package/dist/web/server/assets/main-ClG3yglx.css +0 -2
  606. package/dist/web/server/assets/seedSync.worker-Dr-OnZN0.js +0 -16
  607. package/dist/web/server/seed/core/chunks/canvas.f44b5df1.json +0 -1
  608. package/dist/web/server/seed/core/chunks/efforts.8a53092f.json +0 -1
  609. package/dist/web/server/seed/core/chunks/equipment.c45026fc.json +0 -1
@@ -0,0 +1,335 @@
1
+ {
2
+ "path": "markdown/canvas/guide/structure.md",
3
+ "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /guide/structure\ntype: guide\ntitle: \"Structure & Rounds\"\ndescription: \"Rounds, sets, ladders, and rep schemes — indentation is the nesting mechanism, one thing per line.\"\n---\n\n```chapter\nid: structure\ntitle: Structure & Rounds\nbadge: blocks\nquests: structure-run, structure-rounds, structure-repscheme\nsections: []\n```\n\n```quest\nid: structure-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: structure-rounds\nlabel: Wrap movements in 2+ rounds\nvalidation:\n type: min-rounds\n count: 2\n```\n\n```quest\nid: structure-repscheme\nlabel: Write a rep scheme\nvalidation:\n type: contains-token\n value: 21-15-9\n```\n\n# Structure & Rounds {sticky dark full-bleed}\n\nA header in parentheses creates a **round behavior** that owns every indented line beneath it. Ownership is indentation; the runtime tracks which round you're in and advances automatically.\n\n```view\nname: preview\nstate: note\nsource: wods/examples/syntax/groups-1.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## Rounds {#rounds}\n\n```time\n(3)\n 10 Pushups\n 15 Air Squats\n```\n\n`(3)`, `(3 Rounds)`, `(3 Rds)` — the label is optional. The clock executes pushups, air squats, then repeats until three rounds are done, showing the current round throughout.\n\n## Rep schemes {#rep-schemes}\n\n```button\nlabel: Try it: Rep schemes\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/groups-2.md\n```\n\nA dash-separated list creates one round per value, and **every movement in the block inherits the current round's value**:\n\n```time\n(21-15-9) Thruster / Pull-up\n```\n\nRound 1: 21 thrusters and 21 pull-ups. Round 2: 15 of each. Round 3: 9. Ladders like `(10-8-6-4-2)` work the same way. The slash between movements is choice notation — do the movements in either order (or alternate) each round.\n\n## Sets {#sets}\n\n```button\nlabel: Try it: Sets\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/multiple-sets.md\n```\n\n`(5 Sets)` repeats a block five times with equal reps per set — usually with rest inside:\n\n```time\n(5 Sets)\n 3 Back Squat 225lb\n *2:00 Rest\n```\n\n## Nesting {#nesting}\n\n```button\nlabel: Try it: Nesting\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/groups-3.md\n```\n\nRounds nest inside rounds — supersets, alternating blocks, complex sessions:\n\n```time\n(5)\n (3)\n 5 Deadlift\n 10 Pushups\n```\n\nFive outer rounds, each containing three inner sets: 5 × 3 × 5 = 75 deadlifts. The clock counts both levels and shows where you are.\n\n### Rep math {#rep-math}\n\nThe compiler derives totals — nothing is guessed or manually logged:\n\n| Structure | Math |\n|---|---|\n| `(3 Rounds) 10 Burpees` | 10 × 3 = 30 burpees |\n| `(21-15-9) Thruster` | 21 + 15 + 9 = 45 thrusters |\n| `(5) (3) 5 Deadlift` | 5 × 3 × 5 = 75 deadlifts |\n\nThese planned totals feed the review grid, and — combined with what the clock records — become the [recorded facts](/guide/metrics?h=planned-vs-recorded) that WQL aggregates.\n\n## Named sections {#named-sections}\n\n```button\nlabel: Try it: Named sections\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/named-groups.md\n```\n\nTwo legal ways to label a section of a session:\n\n- **`(Warmup)`** — a parenthesized label creates a named group node. Without a number it does not repeat; it organizes.\n- **`// Warmup`** — a comment line. Pure text: no group node, but it labels sections in every shipped session example.\n\n```time\n// Warmup\n 400m Run\n 10 Air Squats\n\n// Strength\n (5 Sets)\n 3 Back Squat 225lb\n *2:00 Rest\n\n// Conditioning\n 10:00 AMRAP\n 5 Pullups\n 10 Pushups\n\n// Cool-down\n 5:00 Walk\n```\n\nChain named groups to describe a full training session in one note; sections run sequentially and don't need to repeat to be useful. Use `(Label)` when you want a first-class group the runtime knows about; use `// Label` for pure organization. Full sessions like this one are [composed in the last chapter](/guide/sessions?h=full-session).\n\n## Try it {#try-it}\n\n```button\nlabel: Try it: Full session\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/complex-full-session.md\n```\n\n**Run** — run the four-section session above: each named section plays in order, the `(5 Sets)` block tracks set count and enforces required rest, and the AMRAP window counts its own rounds. **Observe** — the review grid at the end shows per-section and per-round splits. Runs save under the shared run contract, same as every chapter.\n\n```button\nlabel: Run\ntarget: preview\nopen: view\npipeline:\n - set-state: track\n```\n\n",
4
+ "blocks": {
5
+ "seed:markdown/canvas/guide/structure.md:0": {
6
+ "id": "seed:markdown/canvas/guide/structure.md:0",
7
+ "kind": "wod",
8
+ "from": 1090,
9
+ "to": 1134,
10
+ "sourceRevision": 1,
11
+ "version": 1,
12
+ "dialect": "time"
13
+ },
14
+ "seed:markdown/canvas/guide/structure.md:1": {
15
+ "id": "seed:markdown/canvas/guide/structure.md:1",
16
+ "kind": "wod",
17
+ "from": 1586,
18
+ "to": 1626,
19
+ "sourceRevision": 1,
20
+ "version": 1,
21
+ "dialect": "time"
22
+ },
23
+ "seed:markdown/canvas/guide/structure.md:2": {
24
+ "id": "seed:markdown/canvas/guide/structure.md:2",
25
+ "kind": "wod",
26
+ "from": 2081,
27
+ "to": 2135,
28
+ "sourceRevision": 1,
29
+ "version": 1,
30
+ "dialect": "time"
31
+ },
32
+ "seed:markdown/canvas/guide/structure.md:3": {
33
+ "id": "seed:markdown/canvas/guide/structure.md:3",
34
+ "kind": "wod",
35
+ "from": 2352,
36
+ "to": 2403,
37
+ "sourceRevision": 1,
38
+ "version": 1,
39
+ "dialect": "time"
40
+ },
41
+ "seed:markdown/canvas/guide/structure.md:4": {
42
+ "id": "seed:markdown/canvas/guide/structure.md:4",
43
+ "kind": "wod",
44
+ "from": 3450,
45
+ "to": 3646,
46
+ "sourceRevision": 1,
47
+ "version": 1,
48
+ "dialect": "time"
49
+ }
50
+ },
51
+ "blockIndex": [
52
+ {
53
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:0",
54
+ "noteId": "guide/structure",
55
+ "blockId": "seed:markdown/canvas/guide/structure.md:0",
56
+ "blockVersion": 1,
57
+ "sourceRevision": 1,
58
+ "from": 1090,
59
+ "to": 1134,
60
+ "position": 0,
61
+ "dataType": "wod",
62
+ "blockContentId": "bc-36c6b543",
63
+ "rawContent": "```time\n(3)\n 10 Pushups\n 15 Air Squats\n```",
64
+ "noteTitle": "Structure",
65
+ "createdAt": 1792814294000,
66
+ "isStatic": true,
67
+ "sourceId": "guides:guide/structure",
68
+ "sourcePath": "markdown/canvas/guide/structure.md",
69
+ "routeId": "guide/structure"
70
+ },
71
+ {
72
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:1",
73
+ "noteId": "guide/structure",
74
+ "blockId": "seed:markdown/canvas/guide/structure.md:1",
75
+ "blockVersion": 1,
76
+ "sourceRevision": 1,
77
+ "from": 1586,
78
+ "to": 1626,
79
+ "position": 1,
80
+ "dataType": "wod",
81
+ "blockContentId": "bc-f3e49f1b",
82
+ "rawContent": "```time\n(21-15-9) Thruster / Pull-up\n```",
83
+ "noteTitle": "Structure",
84
+ "createdAt": 1792814294000,
85
+ "isStatic": true,
86
+ "sourceId": "guides:guide/structure",
87
+ "sourcePath": "markdown/canvas/guide/structure.md",
88
+ "routeId": "guide/structure"
89
+ },
90
+ {
91
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:2",
92
+ "noteId": "guide/structure",
93
+ "blockId": "seed:markdown/canvas/guide/structure.md:2",
94
+ "blockVersion": 1,
95
+ "sourceRevision": 1,
96
+ "from": 2081,
97
+ "to": 2135,
98
+ "position": 2,
99
+ "dataType": "wod",
100
+ "blockContentId": "bc-aedf8ee3",
101
+ "rawContent": "```time\n(5 Sets)\n 3 Back Squat 225lb\n *2:00 Rest\n```",
102
+ "noteTitle": "Structure",
103
+ "createdAt": 1792814294000,
104
+ "isStatic": true,
105
+ "sourceId": "guides:guide/structure",
106
+ "sourcePath": "markdown/canvas/guide/structure.md",
107
+ "routeId": "guide/structure"
108
+ },
109
+ {
110
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:3",
111
+ "noteId": "guide/structure",
112
+ "blockId": "seed:markdown/canvas/guide/structure.md:3",
113
+ "blockVersion": 1,
114
+ "sourceRevision": 1,
115
+ "from": 2352,
116
+ "to": 2403,
117
+ "position": 3,
118
+ "dataType": "wod",
119
+ "blockContentId": "bc-9bba73a2",
120
+ "rawContent": "```time\n(5)\n (3)\n 5 Deadlift\n 10 Pushups\n```",
121
+ "noteTitle": "Structure",
122
+ "createdAt": 1792814294000,
123
+ "isStatic": true,
124
+ "sourceId": "guides:guide/structure",
125
+ "sourcePath": "markdown/canvas/guide/structure.md",
126
+ "routeId": "guide/structure"
127
+ },
128
+ {
129
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4",
130
+ "noteId": "guide/structure",
131
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
132
+ "blockVersion": 1,
133
+ "sourceRevision": 1,
134
+ "from": 3450,
135
+ "to": 3646,
136
+ "position": 4,
137
+ "dataType": "wod",
138
+ "blockContentId": "bc-28a484de",
139
+ "rawContent": "```time\n// Warmup\n 400m Run\n 10 Air Squats\n\n// Strength\n (5 Sets)\n 3 Back Squat 225lb\n *2:00 Rest\n\n// Conditioning\n 10:00 AMRAP\n 5 Pullups\n 10 Pushups\n\n// Cool-down\n 5:00 Walk\n```",
140
+ "noteTitle": "Structure",
141
+ "createdAt": 1792814294000,
142
+ "isStatic": true,
143
+ "sourceId": "guides:guide/structure",
144
+ "sourcePath": "markdown/canvas/guide/structure.md",
145
+ "routeId": "guide/structure"
146
+ }
147
+ ],
148
+ "blockEfforts": [
149
+ {
150
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:0:push-up",
151
+ "noteId": "guide/structure",
152
+ "blockId": "seed:markdown/canvas/guide/structure.md:0",
153
+ "blockContentId": "bc-36c6b543",
154
+ "effortSlug": "push-up",
155
+ "isStatic": true,
156
+ "sourcePath": "markdown/canvas/guide/structure.md",
157
+ "createdAt": 1792814294000
158
+ },
159
+ {
160
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:0:air-squat",
161
+ "noteId": "guide/structure",
162
+ "blockId": "seed:markdown/canvas/guide/structure.md:0",
163
+ "blockContentId": "bc-36c6b543",
164
+ "effortSlug": "air-squat",
165
+ "isStatic": true,
166
+ "sourcePath": "markdown/canvas/guide/structure.md",
167
+ "createdAt": 1792814294000
168
+ },
169
+ {
170
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:1:thruster",
171
+ "noteId": "guide/structure",
172
+ "blockId": "seed:markdown/canvas/guide/structure.md:1",
173
+ "blockContentId": "bc-f3e49f1b",
174
+ "effortSlug": "thruster",
175
+ "isStatic": true,
176
+ "sourcePath": "markdown/canvas/guide/structure.md",
177
+ "createdAt": 1792814294000
178
+ },
179
+ {
180
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:1:pull-up",
181
+ "noteId": "guide/structure",
182
+ "blockId": "seed:markdown/canvas/guide/structure.md:1",
183
+ "blockContentId": "bc-f3e49f1b",
184
+ "effortSlug": "pull-up",
185
+ "isStatic": true,
186
+ "sourcePath": "markdown/canvas/guide/structure.md",
187
+ "createdAt": 1792814294000
188
+ },
189
+ {
190
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:2:back-squat",
191
+ "noteId": "guide/structure",
192
+ "blockId": "seed:markdown/canvas/guide/structure.md:2",
193
+ "blockContentId": "bc-aedf8ee3",
194
+ "effortSlug": "back-squat",
195
+ "isStatic": true,
196
+ "sourcePath": "markdown/canvas/guide/structure.md",
197
+ "createdAt": 1792814294000
198
+ },
199
+ {
200
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:3:deadlift",
201
+ "noteId": "guide/structure",
202
+ "blockId": "seed:markdown/canvas/guide/structure.md:3",
203
+ "blockContentId": "bc-9bba73a2",
204
+ "effortSlug": "deadlift",
205
+ "isStatic": true,
206
+ "sourcePath": "markdown/canvas/guide/structure.md",
207
+ "createdAt": 1792814294000
208
+ },
209
+ {
210
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:3:push-up",
211
+ "noteId": "guide/structure",
212
+ "blockId": "seed:markdown/canvas/guide/structure.md:3",
213
+ "blockContentId": "bc-9bba73a2",
214
+ "effortSlug": "push-up",
215
+ "isStatic": true,
216
+ "sourcePath": "markdown/canvas/guide/structure.md",
217
+ "createdAt": 1792814294000
218
+ },
219
+ {
220
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:air-squat",
221
+ "noteId": "guide/structure",
222
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
223
+ "blockContentId": "bc-28a484de",
224
+ "effortSlug": "air-squat",
225
+ "isStatic": true,
226
+ "sourcePath": "markdown/canvas/guide/structure.md",
227
+ "createdAt": 1792814294000
228
+ },
229
+ {
230
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:back-squat",
231
+ "noteId": "guide/structure",
232
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
233
+ "blockContentId": "bc-28a484de",
234
+ "effortSlug": "back-squat",
235
+ "isStatic": true,
236
+ "sourcePath": "markdown/canvas/guide/structure.md",
237
+ "createdAt": 1792814294000
238
+ },
239
+ {
240
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:pull-up",
241
+ "noteId": "guide/structure",
242
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
243
+ "blockContentId": "bc-28a484de",
244
+ "effortSlug": "pull-up",
245
+ "isStatic": true,
246
+ "sourcePath": "markdown/canvas/guide/structure.md",
247
+ "createdAt": 1792814294000
248
+ },
249
+ {
250
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:push-up",
251
+ "noteId": "guide/structure",
252
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
253
+ "blockContentId": "bc-28a484de",
254
+ "effortSlug": "push-up",
255
+ "isStatic": true,
256
+ "sourcePath": "markdown/canvas/guide/structure.md",
257
+ "createdAt": 1792814294000
258
+ },
259
+ {
260
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:walking-3-mph",
261
+ "noteId": "guide/structure",
262
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
263
+ "blockContentId": "bc-28a484de",
264
+ "effortSlug": "walking-3-mph",
265
+ "isStatic": true,
266
+ "sourcePath": "markdown/canvas/guide/structure.md",
267
+ "createdAt": 1792814294000
268
+ }
269
+ ],
270
+ "blockEquipment": [
271
+ {
272
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:1:barbell",
273
+ "noteId": "guide/structure",
274
+ "blockId": "seed:markdown/canvas/guide/structure.md:1",
275
+ "blockContentId": "bc-f3e49f1b",
276
+ "equipmentSlug": "barbell",
277
+ "isStatic": true,
278
+ "sourcePath": "markdown/canvas/guide/structure.md",
279
+ "createdAt": 1792814294000
280
+ },
281
+ {
282
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:1:pull-up-bar",
283
+ "noteId": "guide/structure",
284
+ "blockId": "seed:markdown/canvas/guide/structure.md:1",
285
+ "blockContentId": "bc-f3e49f1b",
286
+ "equipmentSlug": "pull-up-bar",
287
+ "isStatic": true,
288
+ "sourcePath": "markdown/canvas/guide/structure.md",
289
+ "createdAt": 1792814294000
290
+ },
291
+ {
292
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:2:barbell",
293
+ "noteId": "guide/structure",
294
+ "blockId": "seed:markdown/canvas/guide/structure.md:2",
295
+ "blockContentId": "bc-aedf8ee3",
296
+ "equipmentSlug": "barbell",
297
+ "isStatic": true,
298
+ "sourcePath": "markdown/canvas/guide/structure.md",
299
+ "createdAt": 1792814294000
300
+ },
301
+ {
302
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:3:barbell",
303
+ "noteId": "guide/structure",
304
+ "blockId": "seed:markdown/canvas/guide/structure.md:3",
305
+ "blockContentId": "bc-9bba73a2",
306
+ "equipmentSlug": "barbell",
307
+ "isStatic": true,
308
+ "sourcePath": "markdown/canvas/guide/structure.md",
309
+ "createdAt": 1792814294000
310
+ },
311
+ {
312
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:barbell",
313
+ "noteId": "guide/structure",
314
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
315
+ "blockContentId": "bc-28a484de",
316
+ "equipmentSlug": "barbell",
317
+ "isStatic": true,
318
+ "sourcePath": "markdown/canvas/guide/structure.md",
319
+ "createdAt": 1792814294000
320
+ },
321
+ {
322
+ "id": "guide/structure:seed:markdown/canvas/guide/structure.md:4:pull-up-bar",
323
+ "noteId": "guide/structure",
324
+ "blockId": "seed:markdown/canvas/guide/structure.md:4",
325
+ "blockContentId": "bc-28a484de",
326
+ "equipmentSlug": "pull-up-bar",
327
+ "isStatic": true,
328
+ "sourcePath": "markdown/canvas/guide/structure.md",
329
+ "createdAt": 1792814294000
330
+ }
331
+ ],
332
+ "commit": "6807397851ef98887f5ce267e8e83c650c3e41f6",
333
+ "uuid": "35ed19b0-db3f-57bd-bb40-159337c801d0",
334
+ "version": 1
335
+ }
@@ -0,0 +1,117 @@
1
+ {
2
+ "path": "markdown/canvas/guide/wql.md",
3
+ "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /guide/wql\ntype: guide\ntitle: \"Query Your Training (WQL)\"\ndescription: \"The workout query language — aggregates, filters, rollups, and pipes to shape your training data.\"\n---\n\n# Query Your Training (WQL) {sticky dark full-bleed}\n\nWQL (Wod Query Language) queries your journal across two planes: numeric **facts** the clock recorded, and the markdown **content** those facts came from. The panel on the right is a live query sandbox: the ```query block renders real results, and editing the query line re-runs it as you type — switch presets with the tabs as each section loads them.\n\n```view\nname: sandbox\nstate: note\nsource: wql-presets/aggregate-by-week.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n```query\nsum:totalVolume{discipline:strength} by {week} last 6w\n```\n\nThree surfaces use the same language: the **Library** (zero-syntax tri-state browsing), the **Explorer** (`/dashboards` workbench), and **in-note ```query blocks** — the one this chapter focuses on, which [dashboards](/guide/dashboards) compose.\n\n## The two planes {#planes}\n\n| Plane | Shape | Searches | Example |\n|---|---|---|---|\n| **Metrics** | `agg:metric{filters} by {dim}` | the fact store | `sum:totalVolume{} by {week}` |\n| **Content** | `:target{filters,notebook:slug}` | notes, notebooks, blocks, efforts | `:note{effort:fran,notebook:journal} last 8w` |\n\n## Aggregate queries {#aggregate}\n\n```button\nlabel: Try it: Weekly volume\ntarget: sandbox\npipeline:\n - set-source: wql-presets/aggregate-by-week.md\n```\n\n```button\nlabel: Try it: By effort\ntarget: sandbox\npipeline:\n - set-source: wql-presets/aggregate-by-effort.md\n```\n\n```button\nlabel: Try it: TIS trend\ntarget: sandbox\npipeline:\n - set-source: wql-presets/tis-trend.md\n```\n\n```\n<aggregator>:<metric>{<filters>} by {<dimension>} last <window>\n```\n\n**Aggregators** — `sum`, `avg`, `min`, `max`, `count`, `last` (most recent value), `delta` (change across the window).\n\n**Metrics** — two tiers of stored facts, plus everything calculated:\n\n- Tier-2 aggregates: `totalVolume`, `totalReps`, `totalDistance`, `tis`, `sessionLoad`\n- Metric families: `reps`, `distance`, `resistance`, `elapsed`, `power`, `pace`\n- Calculated: the [`calc.*` list](/guide/metrics?h=calculated) (`calc.acwr`, `calc.e1rm`, `calc.readiness`, …)\n\n`avg:session-rpe{}` works too — [captured metrics](/guide/metrics?h=session-rpe) are facts like any other.\n\n```button\nlabel: Try it: Session RPE\ntarget: sandbox\npipeline:\n - set-source: wql-presets/session-rpe.md\n```\n\n**Dimensions** — time buckets `day`, `week`, `session`, `round`; metadata `effort`, `discipline`, `intensity`, `grade`; and any [custom property you authored](/guide/metrics?h=custom-metrics) (`by {coach}`).\n\n### Filters {#filters}\n\n```button\nlabel: Try it: Filter combos\ntarget: sandbox\npipeline:\n - set-source: wql-presets/filter-combos.md\n```\n\nInside the braces:\n\n| Filter | Meaning |\n|---|---|\n| `{effort:thruster}` | exact match |\n| `{!discipline:recovery}` | negation — exclude |\n| `{discipline:strength\\|gymnastics}` | OR |\n| `{text:fran}` | substring (content plane) |\n| `{intensity:high}` | intensity tier — one of `low`, `moderate`, `high` |\n| `{tags:benchmark}` | note tags |\n| `{notebook:crossfit-girls}` | notebook (`notebook/{slug}` or bare slug) |\n| `{coach:greg}` | your custom property |\n\n### Notebooks &amp; sources {#sources}\n\n```button\nlabel: Try it: notebook:journal\ntarget: sandbox\npipeline:\n - set-source: wql-presets/source-journal.md\n```\n\nEvery note belongs to a canonical `notebook/{slug}` container — including the built-in defaults `notebook/journal`, `notebook/playground`, and `notebook/guides`, user-created notebooks, and seed-delivered notebooks (such as `notebook/crossfit-girls`).\n\nFilter by notebook with `notebook:<slug>` (or `notebook:notebook/<slug>`), or by storage scope with `source:`:\n\n`journal` (your journal notes) · `feeds` / `notebooks` (notebook notes) · `guides` · `playground` (plus `dashboards`, `efforts`, `equipment`)\n\nOmitting `source:` and `notebook:` searches **all** notes — there is no `source:all` (the parser refuses it). Pin one notebook with `notebook:crossfit-girls` (or legacy `catalog:crossfit-girls`).\n\nJournal scope includes user-created clones whose `sourceId` points to the original note UUID or legacy `journal/YYYY-MM-DD` ID. Only user-created notes (`seedOrigin !== 'seed'`) are editable; seed-delivered notebook notes are read-only and can be cloned into your writable notebooks.\n\n### Windows {#windows}\n\nOne per query, at the end: relative — `last 7d`, `last 6w`, `last 12w` — or absolute — `from 2026-01-01 to 2026-03-31` (both dates included; drop `to …` to stay open). There is no `since:` keyword.\n\n### Grouping & rollups {#grouping-rollup}\n\n`by {week}` buckets; multiple dimensions group hierarchically — `by {intensity, week}`. Smooth weekly series with `.rollup(2w)` or `.rollup(4w)` (any multi-day/multi-week period; `.rollup(1w)` is refused — use `by {week}`).\n\n### Where joins {#joins}\n\n```button\nlabel: Try it: Where join\ntarget: sandbox\npipeline:\n - set-source: wql-presets/where-join.md\n```\n\nContent queries can require a numeric threshold computed over each result's linked workouts:\n\n```query\n:note{tags:pr,notebook:journal} last 8w where sum:totalVolume{} > 5000\n```\n\nKeep only journal notes tagged `pr` whose total volume exceeds 5,000 kg. Joins are supported on `:note` and `:block`; other targets report an advisory and ignore the clause. Joins lean on the **Block Content Id** — a content hash of each workout block, stable across reorders and preserved when you clone a catalog benchmark into your journal, so history aggregates across every note where that workout lives.\n\n## Content queries {#content}\n\n```button\nlabel: Try it: fran\ntarget: sandbox\npipeline:\n - set-source: wql-presets/content-fran.md\n```\n\n```query\n:block{text:fran,source:notebooks}\n```\n\nTargets: `:note` / `:notes` (whole notes), `:notebook` / `:notebooks` (notebooks), `:block` (addressable fenced blocks), `:effort` (registry entries, filterable by `effort`, `discipline`, `intensity`, `origin`, `text`), plus the advanced `:session`, `:segment`, `:event` for recorded results and raw rows. Content-only keys (`type`, `text`, `has`, `source`, `catalog`, `notebook`) are category errors on aggregates.\n\nThe search palette's FIND mode matches note titles and bodies within its selected scope and time window. Type plain text or a quoted phrase such as `\"workout in the park\"`; clearing the text restores the scope. WQL mode retains diagnostics for malformed queries. Freeform CONTAINS rows have no count badge; the results total reports matches.\n\n### Presentation pipes {#pipes}\n\n```button\nlabel: Try it: limit 5\ntarget: sandbox\npipeline:\n - set-source: wql-presets/pipes-limit.md\n```\n\nContent queries can end with pipes — `| select … | order by … | limit … [offset …]`:\n\n```query\n:note{tags:pr,notebook:journal} last 8w | limit 5\n```\n\n`order by <column> [asc|desc]` sorts by a field of the result rows; `select` picks columns (with `in kg`/`in lb` units). Pipes ride on content queries — aggregates don't take them — and some targets ignore a pipe and say so via advisory (`:session` always orders by completion time; `| select` only reshapes `:segment` and `:event`).\n\n## Try it {#try-it}\n\n**Run** — after running the kettlebell note a few times this week ([First Workout](/guide/start?h=try-it)), edit the sandbox query above: change `by {week}` to `by {effort}`, or swap `{discipline:strength}` for `{!discipline:recovery}` — results re-run as you type. **Observe** — sample fallbacks are always badged and never written as your results; this chapter only reads what runs saved. For the interactive workbench, open the [Explorer on the dashboards page](/dashboards).\n\n```button\nlabel: Open the Explorer →\ntarget: preview\npipeline:\n - navigate: /dashboards\n```\n\n",
4
+ "blocks": {
5
+ "seed:markdown/canvas/guide/wql.md:0": {
6
+ "id": "seed:markdown/canvas/guide/wql.md:0",
7
+ "kind": "query",
8
+ "from": 774,
9
+ "to": 841,
10
+ "sourceRevision": 1,
11
+ "version": 1
12
+ },
13
+ "seed:markdown/canvas/guide/wql.md:1": {
14
+ "id": "seed:markdown/canvas/guide/wql.md:1",
15
+ "kind": "query",
16
+ "from": 5232,
17
+ "to": 5315,
18
+ "sourceRevision": 1,
19
+ "version": 1
20
+ },
21
+ "seed:markdown/canvas/guide/wql.md:2": {
22
+ "id": "seed:markdown/canvas/guide/wql.md:2",
23
+ "kind": "query",
24
+ "from": 5865,
25
+ "to": 5912,
26
+ "sourceRevision": 1,
27
+ "version": 1
28
+ },
29
+ "seed:markdown/canvas/guide/wql.md:3": {
30
+ "id": "seed:markdown/canvas/guide/wql.md:3",
31
+ "kind": "query",
32
+ "from": 6901,
33
+ "to": 6963,
34
+ "sourceRevision": 1,
35
+ "version": 1
36
+ }
37
+ },
38
+ "blockIndex": [
39
+ {
40
+ "id": "guide/wql:seed:markdown/canvas/guide/wql.md:0",
41
+ "noteId": "guide/wql",
42
+ "blockId": "seed:markdown/canvas/guide/wql.md:0",
43
+ "blockVersion": 1,
44
+ "sourceRevision": 1,
45
+ "from": 774,
46
+ "to": 841,
47
+ "position": 0,
48
+ "dataType": "query",
49
+ "rawContent": "```query\nsum:totalVolume{discipline:strength} by {week} last 6w\n```",
50
+ "noteTitle": "Wql",
51
+ "createdAt": 1792814294000,
52
+ "isStatic": true,
53
+ "sourceId": "guides:guide/wql",
54
+ "sourcePath": "markdown/canvas/guide/wql.md",
55
+ "routeId": "guide/wql"
56
+ },
57
+ {
58
+ "id": "guide/wql:seed:markdown/canvas/guide/wql.md:1",
59
+ "noteId": "guide/wql",
60
+ "blockId": "seed:markdown/canvas/guide/wql.md:1",
61
+ "blockVersion": 1,
62
+ "sourceRevision": 1,
63
+ "from": 5232,
64
+ "to": 5315,
65
+ "position": 1,
66
+ "dataType": "query",
67
+ "rawContent": "```query\n:note{tags:pr,notebook:journal} last 8w where sum:totalVolume{} > 5000\n```",
68
+ "noteTitle": "Wql",
69
+ "createdAt": 1792814294000,
70
+ "isStatic": true,
71
+ "sourceId": "guides:guide/wql",
72
+ "sourcePath": "markdown/canvas/guide/wql.md",
73
+ "routeId": "guide/wql"
74
+ },
75
+ {
76
+ "id": "guide/wql:seed:markdown/canvas/guide/wql.md:2",
77
+ "noteId": "guide/wql",
78
+ "blockId": "seed:markdown/canvas/guide/wql.md:2",
79
+ "blockVersion": 1,
80
+ "sourceRevision": 1,
81
+ "from": 5865,
82
+ "to": 5912,
83
+ "position": 2,
84
+ "dataType": "query",
85
+ "rawContent": "```query\n:block{text:fran,source:notebooks}\n```",
86
+ "noteTitle": "Wql",
87
+ "createdAt": 1792814294000,
88
+ "isStatic": true,
89
+ "sourceId": "guides:guide/wql",
90
+ "sourcePath": "markdown/canvas/guide/wql.md",
91
+ "routeId": "guide/wql"
92
+ },
93
+ {
94
+ "id": "guide/wql:seed:markdown/canvas/guide/wql.md:3",
95
+ "noteId": "guide/wql",
96
+ "blockId": "seed:markdown/canvas/guide/wql.md:3",
97
+ "blockVersion": 1,
98
+ "sourceRevision": 1,
99
+ "from": 6901,
100
+ "to": 6963,
101
+ "position": 3,
102
+ "dataType": "query",
103
+ "rawContent": "```query\n:note{tags:pr,notebook:journal} last 8w | limit 5\n```",
104
+ "noteTitle": "Wql",
105
+ "createdAt": 1792814294000,
106
+ "isStatic": true,
107
+ "sourceId": "guides:guide/wql",
108
+ "sourcePath": "markdown/canvas/guide/wql.md",
109
+ "routeId": "guide/wql"
110
+ }
111
+ ],
112
+ "blockEfforts": [],
113
+ "blockEquipment": [],
114
+ "commit": "6807397851ef98887f5ce267e8e83c650c3e41f6",
115
+ "uuid": "94fe48ef-d71a-5120-9c65-0f91c176e0f8",
116
+ "version": 1
117
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "path": "markdown/canvas/home/README.md",
3
+ "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /\ntype: home\n---\n```scroll:chapters\nrunway: 720vh\nscreen: editor\ntypewriter: true\nstages:\n - id: basics\n range: [0.0, 0.166]\n screen: editor\n source: wods/examples/syntax/single-movement.md\n caption: \"Basics. Statements and metrics — how a workout line reads, from rounds to reps.\"\n ring:\n tag: Basics example\n - id: protocols\n range: [0.166, 0.333]\n screen: editor\n source: wods/examples/syntax/timers-rest.md\n caption: \"Protocols. Countdowns, AMRAPs, EMOMs — the timing protocols that pace a workout.\"\n ring:\n tag: Protocols example\n - id: structure\n range: [0.333, 0.5]\n screen: editor\n source: wods/examples/syntax/groups-1.md\n caption: \"Structure. Rounds, groups, and nesting — how blocks compose a workout.\"\n ring:\n tag: Structure example\n - id: custom-metrics\n range: [0.5, 0.666]\n screen: editor\n source: wods/syntax/custom-metrics-1.md\n caption: \"Custom Metrics. Reps, loads, and custom metrics — what gets tracked per movement.\"\n ring:\n tag: Custom Metrics example\n - id: dialects\n range: [0.666, 0.833]\n screen: editor\n source: wods/examples/syntax/dialect-climb-bouldering.md\n caption: \"Dialects. Run, climb, strength — dialect tags that specialize a block.\"\n ring:\n tag: Dialects example\n - id: complex\n range: [0.833, 1.0]\n screen: editor\n source: wods/examples/syntax/complex-swimming.md\n caption: \"Complex Workouts. Multi-set swimming intervals with rest recovery.\"\n ring:\n tag: Complex example\n```\n\n\n```chapter\nid: home-tour\ntitle: Take the Tour\nbadge: play\nquests: qs-arrive, qs-edit, qs-run, qs-tour-timer, qs-tour-analytics\nsections: []\n```\n\n```chapter\nid: basics\ntitle: Basics\nbadge: trophy\nquests: basics-run, basics-movement, basics-reps, basics-load\nsections: []\n```\n\n```chapter\nid: protocols\ntitle: Protocols\nbadge: timer\nquests: protocols-run, protocols-timer, protocols-rounds, protocols-tag\nsections: []\n```\n\n```chapter\nid: structure\ntitle: Structure\nbadge: blocks\nquests: structure-run, structure-rounds, structure-repscheme\nsections: []\n```\n\n```chapter\nid: custom-metrics\ntitle: Custom Metrics\nbadge: activity\nquests: custom-metrics-run, metrics-custom, metrics-calc\nsections: []\n```\n\n```chapter\nid: dialects\ntitle: Dialects\nbadge: file-text\nquests: dialects-run, dialects-log, dialects-climb\nsections: []\n```\n\n```chapter\nid: complex\ntitle: Complex Workouts\nbadge: puzzle\nquests: complex-run, complex-time, complex-rounds\nsections: []\n```\n\n```quest\nid: qs-arrive\nlabel: Welcome to WOD Wiki\ndesc: You landed on the playground dashboard.\n```\n\n```quest\nid: qs-tour-timer\nlabel: See the timer run it\ndesc: Run the workout — the timer starts in the fullscreen clock.\nvalidation:\n type: run-started\n```\n\n```quest\nid: qs-tour-analytics\nlabel: Review the session\ndesc: Scroll to the session insights section of the home page.\n```\n\n```quest\nid: qs-edit\nlabel: Change the workout\ndesc: Make any edit to the demo script.\n```\n\n```quest\nid: qs-run\nlabel: Run it to the finish\ndesc: Press Run and let the workout complete.\nvalidation:\n type: workout-complete\n```\n\n```quest\nid: basics-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: protocols-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: structure-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: custom-metrics-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: dialects-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: complex-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n",
4
+ "blocks": {},
5
+ "blockIndex": [],
6
+ "blockEfforts": [],
7
+ "blockEquipment": [],
8
+ "commit": "6807397851ef98887f5ce267e8e83c650c3e41f6",
9
+ "uuid": "13fb658b-d799-5d16-81e0-d95820983175",
10
+ "version": 1
11
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "path": "markdown/canvas/home/sample-script.md",
3
+ "content": "# Edit Me: Morning Strength\n\nChange the reps, movements, or rest below and see the workout update live.\n\n```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```",
4
+ "blocks": {
5
+ "seed:markdown/canvas/home/sample-script.md:0": {
6
+ "id": "seed:markdown/canvas/home/sample-script.md:0",
7
+ "kind": "wod",
8
+ "from": 105,
9
+ "to": 160,
10
+ "sourceRevision": 1,
11
+ "version": 1,
12
+ "dialect": "time"
13
+ }
14
+ },
15
+ "blockIndex": [
16
+ {
17
+ "id": "markdown/canvas/home/sample-script.md:seed:markdown/canvas/home/sample-script.md:0",
18
+ "noteId": "markdown/canvas/home/sample-script.md",
19
+ "blockId": "seed:markdown/canvas/home/sample-script.md:0",
20
+ "blockVersion": 1,
21
+ "sourceRevision": 1,
22
+ "from": 105,
23
+ "to": 160,
24
+ "position": 0,
25
+ "dataType": "wod",
26
+ "blockContentId": "bc-86bf9888",
27
+ "rawContent": "```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```",
28
+ "noteTitle": "Sample Script",
29
+ "createdAt": 1792814294000,
30
+ "isStatic": true,
31
+ "sourceId": "guides:home/sample-script",
32
+ "sourcePath": "markdown/canvas/home/sample-script.md"
33
+ }
34
+ ],
35
+ "blockEfforts": [
36
+ {
37
+ "id": "markdown/canvas/home/sample-script.md:seed:markdown/canvas/home/sample-script.md:0:kettlebell-swing",
38
+ "noteId": "markdown/canvas/home/sample-script.md",
39
+ "blockId": "seed:markdown/canvas/home/sample-script.md:0",
40
+ "blockContentId": "bc-86bf9888",
41
+ "effortSlug": "kettlebell-swing",
42
+ "isStatic": true,
43
+ "sourcePath": "markdown/canvas/home/sample-script.md",
44
+ "createdAt": 1792814294000
45
+ }
46
+ ],
47
+ "blockEquipment": [
48
+ {
49
+ "id": "markdown/canvas/home/sample-script.md:seed:markdown/canvas/home/sample-script.md:0:kettlebell",
50
+ "noteId": "markdown/canvas/home/sample-script.md",
51
+ "blockId": "seed:markdown/canvas/home/sample-script.md:0",
52
+ "blockContentId": "bc-86bf9888",
53
+ "equipmentSlug": "kettlebell",
54
+ "isStatic": true,
55
+ "sourcePath": "markdown/canvas/home/sample-script.md",
56
+ "createdAt": 1792814294000
57
+ }
58
+ ],
59
+ "commit": "6807397851ef98887f5ce267e8e83c650c3e41f6",
60
+ "uuid": "cb3bc875-7dcd-5f3c-a6d2-30fec1367be2",
61
+ "version": 1
62
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "path": "markdown/canvas/home/welcome-1.md",
3
+ "content": "---\nsearch: hidden\ntitle: \"Welcome\"\nsubtitle: \"Edit this, then hit Run\"\nsection: home\norder: 1\n---\nBelow is a time block, give it a try and click \"Run\" and see the timer come to life.\n\n```time\n0:03 Count Down\n// click \"Next\"\n```",
4
+ "blocks": {
5
+ "seed:markdown/canvas/home/welcome-1.md:0": {
6
+ "id": "seed:markdown/canvas/home/welcome-1.md:0",
7
+ "kind": "wod",
8
+ "from": 185,
9
+ "to": 228,
10
+ "sourceRevision": 1,
11
+ "version": 1,
12
+ "dialect": "time"
13
+ }
14
+ },
15
+ "blockIndex": [
16
+ {
17
+ "id": "markdown/canvas/home/welcome-1.md:seed:markdown/canvas/home/welcome-1.md:0",
18
+ "noteId": "markdown/canvas/home/welcome-1.md",
19
+ "blockId": "seed:markdown/canvas/home/welcome-1.md:0",
20
+ "blockVersion": 1,
21
+ "sourceRevision": 1,
22
+ "from": 185,
23
+ "to": 228,
24
+ "position": 0,
25
+ "dataType": "wod",
26
+ "blockContentId": "bc-3dbe7544",
27
+ "rawContent": "```time\n0:03 Count Down\n// click \"Next\"\n```",
28
+ "noteTitle": "Welcome 1",
29
+ "createdAt": 1792814294000,
30
+ "isStatic": true,
31
+ "sourceId": "guides:home/welcome-1",
32
+ "sourcePath": "markdown/canvas/home/welcome-1.md"
33
+ }
34
+ ],
35
+ "blockEfforts": [],
36
+ "blockEquipment": [],
37
+ "commit": "6807397851ef98887f5ce267e8e83c650c3e41f6",
38
+ "uuid": "45ebe165-cc08-57f0-a3ba-f0c8dc6c9f4c",
39
+ "version": 1
40
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "path": "markdown/canvas/syntax/actions-comments.md",
3
+ "content": "---\nsearch: hidden\ntitle: \"Actions & Comments\"\nsubtitle: \"Use (parentheses) for actions and // for notes\"\nsection: basics\norder: 5\n---\n```time\n(Setup Barbell)\n5 Back Squat ?lb\n// Add weight each set\n```\n",
4
+ "blocks": {
5
+ "seed:markdown/canvas/syntax/actions-comments.md:0": {
6
+ "id": "seed:markdown/canvas/syntax/actions-comments.md:0",
7
+ "kind": "wod",
8
+ "from": 135,
9
+ "to": 202,
10
+ "sourceRevision": 1,
11
+ "version": 1,
12
+ "dialect": "time"
13
+ }
14
+ },
15
+ "blockIndex": [
16
+ {
17
+ "id": "markdown/canvas/syntax/actions-comments.md:seed:markdown/canvas/syntax/actions-comments.md:0",
18
+ "noteId": "markdown/canvas/syntax/actions-comments.md",
19
+ "blockId": "seed:markdown/canvas/syntax/actions-comments.md:0",
20
+ "blockVersion": 1,
21
+ "sourceRevision": 1,
22
+ "from": 135,
23
+ "to": 202,
24
+ "position": 0,
25
+ "dataType": "wod",
26
+ "blockContentId": "bc-d7cb4396",
27
+ "rawContent": "```time\n(Setup Barbell)\n5 Back Squat ?lb\n// Add weight each set\n```",
28
+ "noteTitle": "Actions Comments",
29
+ "createdAt": 1792814294000,
30
+ "isStatic": true,
31
+ "sourceId": "guides:syntax/actions-comments",
32
+ "sourcePath": "markdown/canvas/syntax/actions-comments.md"
33
+ }
34
+ ],
35
+ "blockEfforts": [
36
+ {
37
+ "id": "markdown/canvas/syntax/actions-comments.md:seed:markdown/canvas/syntax/actions-comments.md:0:back-squat",
38
+ "noteId": "markdown/canvas/syntax/actions-comments.md",
39
+ "blockId": "seed:markdown/canvas/syntax/actions-comments.md:0",
40
+ "blockContentId": "bc-d7cb4396",
41
+ "effortSlug": "back-squat",
42
+ "isStatic": true,
43
+ "sourcePath": "markdown/canvas/syntax/actions-comments.md",
44
+ "createdAt": 1792814294000
45
+ }
46
+ ],
47
+ "blockEquipment": [
48
+ {
49
+ "id": "markdown/canvas/syntax/actions-comments.md:seed:markdown/canvas/syntax/actions-comments.md:0:barbell",
50
+ "noteId": "markdown/canvas/syntax/actions-comments.md",
51
+ "blockId": "seed:markdown/canvas/syntax/actions-comments.md:0",
52
+ "blockContentId": "bc-d7cb4396",
53
+ "equipmentSlug": "barbell",
54
+ "isStatic": true,
55
+ "sourcePath": "markdown/canvas/syntax/actions-comments.md",
56
+ "createdAt": 1792814294000
57
+ }
58
+ ],
59
+ "commit": "6807397851ef98887f5ce267e8e83c650c3e41f6",
60
+ "uuid": "4381fef3-ff9c-5577-be55-da1e763b1043",
61
+ "version": 1
62
+ }