skill-calorie 0.2.4 → 0.2.6

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 (552) hide show
  1. package/SKILL.md +10 -9
  2. package/dist/.gen-inputs.json +16 -100
  3. package/dist/analysis/anomaly/common.d.ts +11 -1
  4. package/dist/analysis/anomaly/common.d.ts.map +1 -1
  5. package/dist/analysis/anomaly/common.js +11 -12
  6. package/dist/analysis/anomaly/common.js.map +1 -1
  7. package/dist/analysis/anomaly/diet.d.ts.map +1 -1
  8. package/dist/analysis/anomaly/diet.js +11 -3
  9. package/dist/analysis/anomaly/diet.js.map +1 -1
  10. package/dist/analysis/deficit.d.ts +4 -2
  11. package/dist/analysis/deficit.d.ts.map +1 -1
  12. package/dist/analysis/deficit.js +2 -1
  13. package/dist/analysis/deficit.js.map +1 -1
  14. package/dist/analysis/historyStore.d.ts +2 -2
  15. package/dist/analysis/historyStore.d.ts.map +1 -1
  16. package/dist/analysis/historyStore.js +2 -2
  17. package/dist/analysis/historyStore.js.map +1 -1
  18. package/dist/analysis/index.d.ts +7 -13
  19. package/dist/analysis/index.d.ts.map +1 -1
  20. package/dist/analysis/index.js +15 -21
  21. package/dist/analysis/index.js.map +1 -1
  22. package/dist/analysis/reportDocTracked.d.ts.map +1 -1
  23. package/dist/analysis/reportDocTracked.js +3 -2
  24. package/dist/analysis/reportDocTracked.js.map +1 -1
  25. package/dist/analysis/review.d.ts.map +1 -1
  26. package/dist/analysis/review.js +5 -3
  27. package/dist/analysis/review.js.map +1 -1
  28. package/dist/analysis/simulate.d.ts +4 -2
  29. package/dist/analysis/simulate.d.ts.map +1 -1
  30. package/dist/analysis/simulate.js +5 -2
  31. package/dist/analysis/simulate.js.map +1 -1
  32. package/dist/analysis/simulate2.d.ts.map +1 -1
  33. package/dist/analysis/simulate2.js +4 -1
  34. package/dist/analysis/simulate2.js.map +1 -1
  35. package/dist/analysis/utils.d.ts +21 -25
  36. package/dist/analysis/utils.d.ts.map +1 -1
  37. package/dist/analysis/utils.js +34 -38
  38. package/dist/analysis/utils.js.map +1 -1
  39. package/dist/body/commands.d.ts +5 -1
  40. package/dist/body/commands.d.ts.map +1 -1
  41. package/dist/body/commands.js +5 -4
  42. package/dist/body/commands.js.map +1 -1
  43. package/dist/body/index.d.ts +9 -13
  44. package/dist/body/index.d.ts.map +1 -1
  45. package/dist/body/index.js +14 -19
  46. package/dist/body/index.js.map +1 -1
  47. package/dist/body/wizardDocs.js +1 -1
  48. package/dist/body/wizardPlate.d.ts +1 -1
  49. package/dist/cli/cmd_read.d.ts.map +1 -1
  50. package/dist/cli/cmd_read.js +23 -4
  51. package/dist/cli/cmd_read.js.map +1 -1
  52. package/dist/cli/config.d.ts +16 -0
  53. package/dist/cli/config.d.ts.map +1 -0
  54. package/dist/cli/config.js +68 -0
  55. package/dist/cli/config.js.map +1 -0
  56. package/dist/cli/delivery.d.ts +2 -1
  57. package/dist/cli/delivery.d.ts.map +1 -1
  58. package/dist/cli/delivery.js +4 -3
  59. package/dist/cli/delivery.js.map +1 -1
  60. package/dist/cli/health.d.ts +7 -0
  61. package/dist/cli/health.d.ts.map +1 -0
  62. package/dist/cli/health.js +21 -0
  63. package/dist/cli/health.js.map +1 -0
  64. package/dist/cli/keys.d.ts +1 -2
  65. package/dist/cli/keys.d.ts.map +1 -1
  66. package/dist/cli/keys.js.map +1 -1
  67. package/dist/cli/readArgs.d.ts.map +1 -1
  68. package/dist/cli/readArgs.js +6 -5
  69. package/dist/cli/readArgs.js.map +1 -1
  70. package/dist/cli/write.d.ts +9 -12
  71. package/dist/cli/write.d.ts.map +1 -1
  72. package/dist/cli/write.js +7 -27
  73. package/dist/cli/write.js.map +1 -1
  74. package/dist/config.d.ts +55 -0
  75. package/dist/config.d.ts.map +1 -0
  76. package/dist/config.js +64 -0
  77. package/dist/config.js.map +1 -0
  78. package/dist/diet/commands.d.ts +6 -1
  79. package/dist/diet/commands.d.ts.map +1 -1
  80. package/dist/diet/commands.js +15 -14
  81. package/dist/diet/commands.js.map +1 -1
  82. package/dist/diet/dietEngine.d.ts.map +1 -1
  83. package/dist/diet/dietEngine.js +3 -1
  84. package/dist/diet/dietEngine.js.map +1 -1
  85. package/dist/diet/dietUi.d.ts +8 -3
  86. package/dist/diet/dietUi.d.ts.map +1 -1
  87. package/dist/diet/dietUi.js +18 -25
  88. package/dist/diet/dietUi.js.map +1 -1
  89. package/dist/diet/index.d.ts +7 -11
  90. package/dist/diet/index.d.ts.map +1 -1
  91. package/dist/diet/index.js +18 -19
  92. package/dist/diet/index.js.map +1 -1
  93. package/dist/diet/nutritionPort.d.ts +2 -5
  94. package/dist/diet/nutritionPort.d.ts.map +1 -1
  95. package/dist/diet/nutritionPort.js +14 -12
  96. package/dist/diet/nutritionPort.js.map +1 -1
  97. package/dist/diet/precheckPort.d.ts.map +1 -1
  98. package/dist/diet/precheckPort.js +3 -1
  99. package/dist/diet/precheckPort.js.map +1 -1
  100. package/dist/diet/review.d.ts.map +1 -1
  101. package/dist/diet/review.js +3 -18
  102. package/dist/diet/review.js.map +1 -1
  103. package/dist/exercise/cardio.js +1 -1
  104. package/dist/exercise/cardio.js.map +1 -1
  105. package/dist/exercise/commands.d.ts +1 -1
  106. package/dist/exercise/commands.d.ts.map +1 -1
  107. package/dist/exercise/commands.js +3 -3
  108. package/dist/exercise/commands.js.map +1 -1
  109. package/dist/exercise/distribution.js +1 -1
  110. package/dist/exercise/distribution.js.map +1 -1
  111. package/dist/exercise/edit.d.ts.map +1 -1
  112. package/dist/exercise/edit.js +4 -2
  113. package/dist/exercise/edit.js.map +1 -1
  114. package/dist/exercise/exerciseStore.d.ts.map +1 -1
  115. package/dist/exercise/exerciseStore.js +16 -10
  116. package/dist/exercise/exerciseStore.js.map +1 -1
  117. package/dist/exercise/index.d.ts +7 -12
  118. package/dist/exercise/index.d.ts.map +1 -1
  119. package/dist/exercise/index.js +14 -19
  120. package/dist/exercise/index.js.map +1 -1
  121. package/dist/exercise/recap.js +1 -1
  122. package/dist/exercise/recap.js.map +1 -1
  123. package/dist/exercise/sportPortDocs.d.ts +9 -0
  124. package/dist/exercise/sportPortDocs.d.ts.map +1 -0
  125. package/dist/exercise/sportPortDocs.js +896 -0
  126. package/dist/exercise/sportPortDocs.js.map +1 -0
  127. package/dist/exercise/sportUi.d.ts +4 -2
  128. package/dist/exercise/sportUi.d.ts.map +1 -1
  129. package/dist/exercise/sportUi.js +13 -44
  130. package/dist/exercise/sportUi.js.map +1 -1
  131. package/dist/exercise/strength.js +1 -1
  132. package/dist/exercise/strength.js.map +1 -1
  133. package/dist/exercise/trend.js +1 -1
  134. package/dist/exercise/trend.js.map +1 -1
  135. package/dist/fetch/body.d.ts.map +1 -1
  136. package/dist/fetch/body.js +15 -12
  137. package/dist/fetch/body.js.map +1 -1
  138. package/dist/fetch/diet.d.ts +6 -5
  139. package/dist/fetch/diet.d.ts.map +1 -1
  140. package/dist/fetch/diet.js +19 -25
  141. package/dist/fetch/diet.js.map +1 -1
  142. package/dist/goal/commands.d.ts +5 -1
  143. package/dist/goal/commands.d.ts.map +1 -1
  144. package/dist/goal/commands.js +7 -6
  145. package/dist/goal/commands.js.map +1 -1
  146. package/dist/goal/goalExtraPlate.d.ts.map +1 -1
  147. package/dist/goal/goalExtraPlate.js +3 -1
  148. package/dist/goal/goalExtraPlate.js.map +1 -1
  149. package/dist/goal/goalHistory.d.ts +2 -2
  150. package/dist/goal/goalHistory.d.ts.map +1 -1
  151. package/dist/goal/goalHistory.js +4 -9
  152. package/dist/goal/goalHistory.js.map +1 -1
  153. package/dist/goal/index.d.ts +6 -10
  154. package/dist/goal/index.d.ts.map +1 -1
  155. package/dist/goal/index.js +11 -19
  156. package/dist/goal/index.js.map +1 -1
  157. package/dist/goal/nutritionGoal.d.ts.map +1 -1
  158. package/dist/goal/nutritionGoal.js +4 -1
  159. package/dist/goal/nutritionGoal.js.map +1 -1
  160. package/dist/goal/read.d.ts +1 -1
  161. package/dist/goal/read.d.ts.map +1 -1
  162. package/dist/goal/read.js +1 -1
  163. package/dist/goal/read.js.map +1 -1
  164. package/dist/goal/set.d.ts.map +1 -1
  165. package/dist/goal/set.js +2 -2
  166. package/dist/goal/set.js.map +1 -1
  167. package/dist/health.d.ts +41 -0
  168. package/dist/health.d.ts.map +1 -0
  169. package/dist/health.js +501 -0
  170. package/dist/health.js.map +1 -0
  171. package/dist/help-missing.json +1 -1
  172. package/dist/home/index.d.ts +8 -9
  173. package/dist/home/index.d.ts.map +1 -1
  174. package/dist/home/index.js +11 -11
  175. package/dist/home/index.js.map +1 -1
  176. package/dist/index.d.ts +24 -16
  177. package/dist/index.d.ts.map +1 -1
  178. package/dist/index.js +24 -12
  179. package/dist/index.js.map +1 -1
  180. package/dist/migrate/migrate.js +2 -2
  181. package/dist/migrate/migrate.js.map +1 -1
  182. package/dist/output.d.ts +4 -3
  183. package/dist/output.d.ts.map +1 -1
  184. package/dist/output.js +12 -5
  185. package/dist/output.js.map +1 -1
  186. package/dist/paths.d.ts +6 -2
  187. package/dist/paths.d.ts.map +1 -1
  188. package/dist/paths.js +28 -17
  189. package/dist/paths.js.map +1 -1
  190. package/dist/photo/commands.d.ts +1 -1
  191. package/dist/photo/commands.d.ts.map +1 -1
  192. package/dist/photo/commands.js +3 -3
  193. package/dist/photo/commands.js.map +1 -1
  194. package/dist/photo/compareDoc.js +1 -1
  195. package/dist/photo/compareDoc.js.map +1 -1
  196. package/dist/photo/dir.d.ts +1 -1
  197. package/dist/photo/dir.d.ts.map +1 -1
  198. package/dist/photo/dir.js +6 -5
  199. package/dist/photo/dir.js.map +1 -1
  200. package/dist/photo/gifDoc.d.ts.map +1 -1
  201. package/dist/photo/gifDoc.js +10 -4
  202. package/dist/photo/gifDoc.js.map +1 -1
  203. package/dist/photo/helpCenter.js +1 -1
  204. package/dist/photo/helpCenter.js.map +1 -1
  205. package/dist/photo/helpFile.js +1 -1
  206. package/dist/photo/helpFile.js.map +1 -1
  207. package/dist/photo/helpPaths.d.ts +1 -1
  208. package/dist/photo/helpPaths.js +1 -1
  209. package/dist/photo/helpShell.d.ts +16 -0
  210. package/dist/photo/helpShell.d.ts.map +1 -0
  211. package/dist/photo/helpShell.js +27 -0
  212. package/dist/photo/helpShell.js.map +1 -0
  213. package/dist/photo/index.d.ts +7 -11
  214. package/dist/photo/index.d.ts.map +1 -1
  215. package/dist/photo/index.js +11 -19
  216. package/dist/photo/index.js.map +1 -1
  217. package/dist/photo/photos.d.ts +5 -3
  218. package/dist/photo/photos.d.ts.map +1 -1
  219. package/dist/photo/photos.js +15 -14
  220. package/dist/photo/photos.js.map +1 -1
  221. package/dist/photo/pickerDoc.js +1 -1
  222. package/dist/photo/templates.d.ts +4 -0
  223. package/dist/photo/templates.d.ts.map +1 -0
  224. package/dist/photo/templates.js +29 -0
  225. package/dist/photo/templates.js.map +1 -0
  226. package/dist/photo/viewerDoc.js +1 -1
  227. package/dist/photo/viewerDoc.js.map +1 -1
  228. package/dist/photo/wizard.d.ts +1 -1
  229. package/dist/photo/wizard.js +2 -2
  230. package/dist/photo/wizard.js.map +1 -1
  231. package/dist/photo/wizardPort.d.ts +70 -0
  232. package/dist/photo/wizardPort.d.ts.map +1 -0
  233. package/dist/photo/wizardPort.js +232 -0
  234. package/dist/photo/wizardPort.js.map +1 -0
  235. package/dist/photo/wizardPortDocs.d.ts +6 -0
  236. package/dist/photo/wizardPortDocs.d.ts.map +1 -0
  237. package/dist/photo/wizardPortDocs.js +322 -0
  238. package/dist/photo/wizardPortDocs.js.map +1 -0
  239. package/dist/profile/commands.d.ts +5 -1
  240. package/dist/profile/commands.d.ts.map +1 -1
  241. package/dist/profile/commands.js +4 -3
  242. package/dist/profile/commands.js.map +1 -1
  243. package/dist/profile/index.d.ts +7 -13
  244. package/dist/profile/index.d.ts.map +1 -1
  245. package/dist/profile/index.js +14 -19
  246. package/dist/profile/index.js.map +1 -1
  247. package/dist/profile/setup.d.ts +1 -1
  248. package/dist/render/analysisPlate.d.ts +3 -3
  249. package/dist/render/analysisPlate.d.ts.map +1 -1
  250. package/dist/render/analysisPlate.js +4 -21
  251. package/dist/render/analysisPlate.js.map +1 -1
  252. package/dist/render/diet.d.ts +10 -6
  253. package/dist/render/diet.d.ts.map +1 -1
  254. package/dist/render/diet.js +8 -23
  255. package/dist/render/diet.js.map +1 -1
  256. package/dist/render/exercisePort.d.ts +1 -1
  257. package/dist/render/html.d.ts +0 -6
  258. package/dist/render/html.d.ts.map +1 -1
  259. package/dist/render/html.js +2 -44
  260. package/dist/render/html.js.map +1 -1
  261. package/dist/render/index.d.ts +0 -3
  262. package/dist/render/index.d.ts.map +1 -1
  263. package/dist/render/index.js +2 -2
  264. package/dist/render/index.js.map +1 -1
  265. package/dist/render/planWizardDocs.js +1 -1
  266. package/dist/render/planWizardDocs.js.map +1 -1
  267. package/dist/render/trendMiscPort.d.ts.map +1 -1
  268. package/dist/render/trendMiscPort.js +6 -4
  269. package/dist/render/trendMiscPort.js.map +1 -1
  270. package/dist/render/workoutPlanDocs.js +1 -1
  271. package/dist/render/workoutPlanDocs.js.map +1 -1
  272. package/dist/shared/alive.d.ts +22 -0
  273. package/dist/shared/alive.d.ts.map +1 -0
  274. package/dist/shared/alive.js +22 -0
  275. package/dist/shared/alive.js.map +1 -0
  276. package/dist/shared/commandSpec.d.ts +14 -4
  277. package/dist/shared/commandSpec.d.ts.map +1 -1
  278. package/dist/shared/copyBlock.d.ts +4 -0
  279. package/dist/shared/copyBlock.d.ts.map +1 -0
  280. package/dist/shared/copyBlock.js +26 -0
  281. package/dist/shared/copyBlock.js.map +1 -0
  282. package/dist/shared/docPage.d.ts +2 -1
  283. package/dist/shared/docPage.d.ts.map +1 -1
  284. package/dist/shared/docPage.js +21 -33
  285. package/dist/shared/docPage.js.map +1 -1
  286. package/dist/shared/healthRate.d.ts +21 -0
  287. package/dist/shared/healthRate.d.ts.map +1 -0
  288. package/dist/shared/healthRate.js +21 -0
  289. package/dist/shared/healthRate.js.map +1 -0
  290. package/dist/shared/kcalPerKg.d.ts +16 -0
  291. package/dist/shared/kcalPerKg.d.ts.map +1 -0
  292. package/dist/shared/kcalPerKg.js +16 -0
  293. package/dist/shared/kcalPerKg.js.map +1 -0
  294. package/dist/shared/meal.d.ts +46 -0
  295. package/dist/shared/meal.d.ts.map +1 -0
  296. package/dist/shared/meal.js +75 -0
  297. package/dist/shared/meal.js.map +1 -0
  298. package/dist/shared/nutritionRange.d.ts +28 -0
  299. package/dist/shared/nutritionRange.d.ts.map +1 -0
  300. package/dist/shared/nutritionRange.js +28 -0
  301. package/dist/shared/nutritionRange.js.map +1 -0
  302. package/dist/shared/pageStrips.d.ts +81 -0
  303. package/dist/shared/pageStrips.d.ts.map +1 -0
  304. package/dist/shared/pageStrips.js +166 -0
  305. package/dist/shared/pageStrips.js.map +1 -0
  306. package/dist/shared/planCopyBlock.d.ts +32 -0
  307. package/dist/shared/planCopyBlock.d.ts.map +1 -0
  308. package/dist/shared/planCopyBlock.js +34 -0
  309. package/dist/shared/planCopyBlock.js.map +1 -0
  310. package/dist/shared/sourceLine.d.ts +5 -5
  311. package/dist/shared/sourceLine.d.ts.map +1 -1
  312. package/dist/shared/sourceLine.js +3 -1
  313. package/dist/shared/sourceLine.js.map +1 -1
  314. package/dist/shared/time.d.ts +28 -0
  315. package/dist/shared/time.d.ts.map +1 -0
  316. package/dist/shared/time.js +37 -0
  317. package/dist/shared/time.js.map +1 -0
  318. package/dist/triggers/routeSpec.d.ts +3 -3
  319. package/dist/triggers/routeSpec.js +3 -3
  320. package/dist/triggers/routes.generated.d.ts +2 -2
  321. package/dist/weight/commands.d.ts +4 -1
  322. package/dist/weight/commands.d.ts.map +1 -1
  323. package/dist/weight/commands.js +5 -4
  324. package/dist/weight/commands.js.map +1 -1
  325. package/dist/weight/figures.d.ts.map +1 -1
  326. package/dist/weight/figures.js +3 -1
  327. package/dist/weight/figures.js.map +1 -1
  328. package/dist/weight/index.d.ts +11 -17
  329. package/dist/weight/index.d.ts.map +1 -1
  330. package/dist/weight/index.js +16 -19
  331. package/dist/weight/index.js.map +1 -1
  332. package/dist/weight/records.d.ts.map +1 -1
  333. package/dist/weight/records.js +4 -2
  334. package/dist/weight/records.js.map +1 -1
  335. package/dist/weight/review.js +2 -2
  336. package/dist/weight/review.js.map +1 -1
  337. package/dist/weight/weightUi.d.ts +16 -4
  338. package/dist/weight/weightUi.d.ts.map +1 -1
  339. package/dist/weight/weightUi.js +23 -53
  340. package/dist/weight/weightUi.js.map +1 -1
  341. package/dist/workout/commands.d.ts +16 -2
  342. package/dist/workout/commands.d.ts.map +1 -1
  343. package/dist/workout/commands.js +17 -16
  344. package/dist/workout/commands.js.map +1 -1
  345. package/dist/workout/index.d.ts +10 -19
  346. package/dist/workout/index.d.ts.map +1 -1
  347. package/dist/workout/index.js +17 -31
  348. package/dist/workout/index.js.map +1 -1
  349. package/dist/workout/land.d.ts +1 -1
  350. package/dist/workout/land.js +3 -3
  351. package/dist/workout/land.js.map +1 -1
  352. package/dist/workout/landBatch.d.ts +7 -5
  353. package/dist/workout/landBatch.d.ts.map +1 -1
  354. package/dist/workout/landBatch.js +17 -15
  355. package/dist/workout/landBatch.js.map +1 -1
  356. package/dist/workout/landBatchPages.d.ts.map +1 -1
  357. package/dist/workout/landBatchPages.js +2 -23
  358. package/dist/workout/landBatchPages.js.map +1 -1
  359. package/dist/workout/landPages.d.ts.map +1 -1
  360. package/dist/workout/landPages.js +2 -23
  361. package/dist/workout/landPages.js.map +1 -1
  362. package/dist/workout/landRunner.d.ts +8 -10
  363. package/dist/workout/landRunner.d.ts.map +1 -1
  364. package/dist/workout/landRunner.js +35 -56
  365. package/dist/workout/landRunner.js.map +1 -1
  366. package/dist/workout/planCopyBlock.d.ts +9 -0
  367. package/dist/workout/planCopyBlock.d.ts.map +1 -0
  368. package/dist/workout/planCopyBlock.js +9 -0
  369. package/dist/workout/planCopyBlock.js.map +1 -0
  370. package/dist/workout/planEditor.d.ts +94 -0
  371. package/dist/workout/planEditor.d.ts.map +1 -0
  372. package/dist/workout/planEditor.js +38 -0
  373. package/dist/workout/planEditor.js.map +1 -0
  374. package/dist/workout/planEditorCss.d.ts +13 -0
  375. package/dist/workout/planEditorCss.d.ts.map +1 -0
  376. package/dist/workout/planEditorCss.js +140 -0
  377. package/dist/workout/planEditorCss.js.map +1 -0
  378. package/dist/workout/planEditorDocs.d.ts +7 -0
  379. package/dist/workout/planEditorDocs.d.ts.map +1 -0
  380. package/dist/workout/planEditorDocs.js +56 -0
  381. package/dist/workout/planEditorDocs.js.map +1 -0
  382. package/dist/workout/planEditorPort.d.ts +45 -0
  383. package/dist/workout/planEditorPort.d.ts.map +1 -0
  384. package/dist/workout/planEditorPort.js +217 -0
  385. package/dist/workout/planEditorPort.js.map +1 -0
  386. package/dist/workout/planEditorRuntime.d.ts +15 -0
  387. package/dist/workout/planEditorRuntime.d.ts.map +1 -0
  388. package/dist/workout/planEditorRuntime.js +427 -0
  389. package/dist/workout/planEditorRuntime.js.map +1 -0
  390. package/dist/workout/planStore.d.ts.map +1 -1
  391. package/dist/workout/planStore.js +1 -3
  392. package/dist/workout/planStore.js.map +1 -1
  393. package/dist/workout/receipt.d.ts +1 -1
  394. package/dist/workout/receipt.js +1 -1
  395. package/dist/workout/receipt.js.map +1 -1
  396. package/dist/workout/review.d.ts +1 -1
  397. package/dist/workout/review.js +1 -1
  398. package/dist/workout/review.js.map +1 -1
  399. package/dist/workout/reviewDocs.d.ts +3 -0
  400. package/dist/workout/reviewDocs.d.ts.map +1 -0
  401. package/dist/{render → workout}/reviewDocs.js +2 -2
  402. package/dist/workout/reviewDocs.js.map +1 -0
  403. package/dist/workout/reviewDocsCss.d.ts.map +1 -0
  404. package/dist/{render → workout}/reviewDocsCss.js +1 -1
  405. package/dist/workout/reviewDocsCss.js.map +1 -0
  406. package/dist/workout/xunjiBackfill.d.ts.map +1 -1
  407. package/dist/workout/xunjiBackfill.js +4 -25
  408. package/dist/workout/xunjiBackfill.js.map +1 -1
  409. package/dist/workout/xunjiPush.d.ts.map +1 -1
  410. package/dist/workout/xunjiPush.js +4 -25
  411. package/dist/workout/xunjiPush.js.map +1 -1
  412. package/dist/workout/xunjiRunner.d.ts +11 -5
  413. package/dist/workout/xunjiRunner.d.ts.map +1 -1
  414. package/dist/workout/xunjiRunner.js +29 -29
  415. package/dist/workout/xunjiRunner.js.map +1 -1
  416. package/dist/xunji/backfill.d.ts +5 -3
  417. package/dist/xunji/backfill.d.ts.map +1 -1
  418. package/dist/xunji/backfill.js +11 -5
  419. package/dist/xunji/backfill.js.map +1 -1
  420. package/dist/xunji/catalog.d.ts +3 -1
  421. package/dist/xunji/catalog.d.ts.map +1 -1
  422. package/dist/xunji/catalog.js +12 -6
  423. package/dist/xunji/catalog.js.map +1 -1
  424. package/dist/xunji/fetch.d.ts +3 -4
  425. package/dist/xunji/fetch.d.ts.map +1 -1
  426. package/dist/xunji/fetch.js +8 -9
  427. package/dist/xunji/fetch.js.map +1 -1
  428. package/dist/xunji/key.d.ts +16 -56
  429. package/dist/xunji/key.d.ts.map +1 -1
  430. package/dist/xunji/key.js +44 -104
  431. package/dist/xunji/key.js.map +1 -1
  432. package/dist/xunji/planSource.d.ts +3 -3
  433. package/dist/xunji/planSource.js +6 -6
  434. package/dist/xunji/planSource.js.map +1 -1
  435. package/dist/xunji/rateLimit.d.ts +7 -2
  436. package/dist/xunji/rateLimit.d.ts.map +1 -1
  437. package/dist/xunji/rateLimit.js +12 -3
  438. package/dist/xunji/rateLimit.js.map +1 -1
  439. package/dist/xunji/run-sync.d.ts +3 -3
  440. package/dist/xunji/run-sync.d.ts.map +1 -1
  441. package/dist/xunji/run-sync.js +5 -5
  442. package/dist/xunji/run-sync.js.map +1 -1
  443. package/dist/xunji/run.d.ts +2 -4
  444. package/dist/xunji/run.d.ts.map +1 -1
  445. package/dist/xunji/run.js +5 -5
  446. package/dist/xunji/run.js.map +1 -1
  447. package/dist/xunji/subcommands.d.ts.map +1 -1
  448. package/dist/xunji/subcommands.js +2 -3
  449. package/dist/xunji/subcommands.js.map +1 -1
  450. package/dist/xunji/upsert.d.ts +4 -4
  451. package/dist/xunji/upsert.d.ts.map +1 -1
  452. package/dist/xunji/upsert.js +6 -6
  453. package/dist/xunji/upsert.js.map +1 -1
  454. package/package.json +2 -9
  455. package/dist/cli/legacy/index.d.ts +0 -25
  456. package/dist/cli/legacy/index.d.ts.map +0 -1
  457. package/dist/cli/legacy/index.js +0 -37
  458. package/dist/cli/legacy/index.js.map +0 -1
  459. package/dist/cli/legacy/routes/index.d.ts +0 -8
  460. package/dist/cli/legacy/routes/index.d.ts.map +0 -1
  461. package/dist/cli/legacy/routes/index.js +0 -23
  462. package/dist/cli/legacy/routes/index.js.map +0 -1
  463. package/dist/cli/legacy/routes/scene-01.d.ts +0 -12
  464. package/dist/cli/legacy/routes/scene-01.d.ts.map +0 -1
  465. package/dist/cli/legacy/routes/scene-01.js +0 -2
  466. package/dist/cli/legacy/routes/scene-01.js.map +0 -1
  467. package/dist/cli/legacy/routes/scene-02.d.ts +0 -18
  468. package/dist/cli/legacy/routes/scene-02.d.ts.map +0 -1
  469. package/dist/cli/legacy/routes/scene-02.js +0 -2
  470. package/dist/cli/legacy/routes/scene-02.js.map +0 -1
  471. package/dist/cli/legacy/routes/scene-03.d.ts +0 -13
  472. package/dist/cli/legacy/routes/scene-03.d.ts.map +0 -1
  473. package/dist/cli/legacy/routes/scene-03.js +0 -2
  474. package/dist/cli/legacy/routes/scene-03.js.map +0 -1
  475. package/dist/cli/legacy/routes/scene-04.d.ts +0 -10
  476. package/dist/cli/legacy/routes/scene-04.d.ts.map +0 -1
  477. package/dist/cli/legacy/routes/scene-04.js +0 -2
  478. package/dist/cli/legacy/routes/scene-04.js.map +0 -1
  479. package/dist/cli/legacy/routes/scene-05.d.ts +0 -10
  480. package/dist/cli/legacy/routes/scene-05.d.ts.map +0 -1
  481. package/dist/cli/legacy/routes/scene-05.js +0 -2
  482. package/dist/cli/legacy/routes/scene-05.js.map +0 -1
  483. package/dist/cli/legacy/routes/scene-06.d.ts +0 -10
  484. package/dist/cli/legacy/routes/scene-06.d.ts.map +0 -1
  485. package/dist/cli/legacy/routes/scene-06.js +0 -2
  486. package/dist/cli/legacy/routes/scene-06.js.map +0 -1
  487. package/dist/cli/legacy/routes/scene-07.d.ts +0 -10
  488. package/dist/cli/legacy/routes/scene-07.d.ts.map +0 -1
  489. package/dist/cli/legacy/routes/scene-07.js +0 -2
  490. package/dist/cli/legacy/routes/scene-07.js.map +0 -1
  491. package/dist/cli/legacy/routes/scene-08.d.ts +0 -12
  492. package/dist/cli/legacy/routes/scene-08.d.ts.map +0 -1
  493. package/dist/cli/legacy/routes/scene-08.js +0 -2
  494. package/dist/cli/legacy/routes/scene-08.js.map +0 -1
  495. package/dist/cli/legacy/routes/scene-09.d.ts +0 -12
  496. package/dist/cli/legacy/routes/scene-09.d.ts.map +0 -1
  497. package/dist/cli/legacy/routes/scene-09.js +0 -2
  498. package/dist/cli/legacy/routes/scene-09.js.map +0 -1
  499. package/dist/cli/legacy/routes/scene-10.d.ts +0 -10
  500. package/dist/cli/legacy/routes/scene-10.d.ts.map +0 -1
  501. package/dist/cli/legacy/routes/scene-10.js +0 -2
  502. package/dist/cli/legacy/routes/scene-10.js.map +0 -1
  503. package/dist/cli/legacy/scene-01.d.ts +0 -13
  504. package/dist/cli/legacy/scene-01.d.ts.map +0 -1
  505. package/dist/cli/legacy/scene-01.js +0 -2
  506. package/dist/cli/legacy/scene-01.js.map +0 -1
  507. package/dist/cli/legacy/scene-02.d.ts +0 -12
  508. package/dist/cli/legacy/scene-02.d.ts.map +0 -1
  509. package/dist/cli/legacy/scene-02.js +0 -2
  510. package/dist/cli/legacy/scene-02.js.map +0 -1
  511. package/dist/cli/legacy/scene-03.d.ts +0 -14
  512. package/dist/cli/legacy/scene-03.d.ts.map +0 -1
  513. package/dist/cli/legacy/scene-03.js +0 -2
  514. package/dist/cli/legacy/scene-03.js.map +0 -1
  515. package/dist/cli/legacy/scene-04.d.ts +0 -12
  516. package/dist/cli/legacy/scene-04.d.ts.map +0 -1
  517. package/dist/cli/legacy/scene-04.js +0 -2
  518. package/dist/cli/legacy/scene-04.js.map +0 -1
  519. package/dist/cli/legacy/scene-05.d.ts +0 -14
  520. package/dist/cli/legacy/scene-05.d.ts.map +0 -1
  521. package/dist/cli/legacy/scene-05.js +0 -2
  522. package/dist/cli/legacy/scene-05.js.map +0 -1
  523. package/dist/cli/legacy/scene-06.d.ts +0 -15
  524. package/dist/cli/legacy/scene-06.d.ts.map +0 -1
  525. package/dist/cli/legacy/scene-06.js +0 -2
  526. package/dist/cli/legacy/scene-06.js.map +0 -1
  527. package/dist/cli/legacy/scene-07.d.ts +0 -15
  528. package/dist/cli/legacy/scene-07.d.ts.map +0 -1
  529. package/dist/cli/legacy/scene-07.js +0 -2
  530. package/dist/cli/legacy/scene-07.js.map +0 -1
  531. package/dist/cli/legacy/scene-08.d.ts +0 -13
  532. package/dist/cli/legacy/scene-08.d.ts.map +0 -1
  533. package/dist/cli/legacy/scene-08.js +0 -2
  534. package/dist/cli/legacy/scene-08.js.map +0 -1
  535. package/dist/cli/legacy/scene-09.d.ts +0 -13
  536. package/dist/cli/legacy/scene-09.d.ts.map +0 -1
  537. package/dist/cli/legacy/scene-09.js +0 -2
  538. package/dist/cli/legacy/scene-09.js.map +0 -1
  539. package/dist/cli/legacy/scene-10.d.ts +0 -13
  540. package/dist/cli/legacy/scene-10.d.ts.map +0 -1
  541. package/dist/cli/legacy/scene-10.js +0 -2
  542. package/dist/cli/legacy/scene-10.js.map +0 -1
  543. package/dist/cli/legacy/types.d.ts +0 -16
  544. package/dist/cli/legacy/types.d.ts.map +0 -1
  545. package/dist/cli/legacy/types.js +0 -2
  546. package/dist/cli/legacy/types.js.map +0 -1
  547. package/dist/render/reviewDocs.d.ts +0 -3
  548. package/dist/render/reviewDocs.d.ts.map +0 -1
  549. package/dist/render/reviewDocs.js.map +0 -1
  550. package/dist/render/reviewDocsCss.d.ts.map +0 -1
  551. package/dist/render/reviewDocsCss.js.map +0 -1
  552. /package/dist/{render → workout}/reviewDocsCss.d.ts +0 -0
@@ -0,0 +1,427 @@
1
+ /** T351-v14 · **计划编辑器页面运行时**(唯一产出者;形状见 `./planEditor.ts` 件头)。
2
+ *
3
+ * 这一段是整台编辑器的行为:周页签、每天最多 4 个时间段(点加一次训练先选时段,
4
+ * 建好后定起止时间)、第 2 周起锁动作只改参数、段内加动作、按当前状态重写复制指令与产物表。
5
+ *
6
+ * 三条硬要求(都会被下一个人问到):
7
+ * ① **无模板字符串、无箭头函数**——这段文本要逐字进页面;整段住在一个 TS 模板字符串里,
8
+ * 所以**注释里不许出现反引号**(出现过一次,字符串当场截断、编译报 TS1127)。
9
+ * ② **零内联处理器**:事件一律在容器上委派(`addEventListener` + `data-act`),不产 `on*` 属性。
10
+ * ③ **文案零分隔符**(负责人 2026-09-15 第 4 条):不拿 `|`/`-`/`·` 拼一句话;
11
+ * 要并列就摆成元素(页签、胶囊、表格列、缩进行)。**日期也走 `cnDate`**(2026年9月7日)。
12
+ * ④ **不重写共享运行时的职责**:复制仍由共享 helpers 的 `bindCopyAction` 委派,本件只更新 `data-t`。
13
+ */
14
+ export const PLAN_EDITOR_JS = `
15
+ (function(){
16
+ var root = document.getElementById('pe-root');
17
+ if (!root) return;
18
+ var S = JSON.parse(document.getElementById('pe-state').textContent);
19
+ var SLOTS = S.slots || ['凌晨','上午','下午','晚上'];
20
+ var MAXD = S.maxSessionsPerDay || 4;
21
+ var MAXM = S.maxMovesPerSession || 6;
22
+ var LIB = S.lib || [];
23
+ var DOW = ['周一','周二','周三','周四','周五','周六','周日'];
24
+ var week = S.openWeek || 0;
25
+ var daySel = 0; // 日页签:一次只显示这一天
26
+ var picker = S.openPicker || null;
27
+ var slotPick = null; // 新建时间段选时段:null=没在选,否则=正在选的那天(0基)
28
+ var filt = { part: null, kind: null, equip: null };
29
+ var query = '';
30
+
31
+ function esc(x){
32
+ return String(x == null ? '' : x).replace(/[&<>"']/g, function(c){
33
+ return ({ '&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;',"'":'&#39;' })[c];
34
+ });
35
+ }
36
+ function cnDate(iso){
37
+ var m = /^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(String(iso || ''));
38
+ return m === null ? String(iso || '') : (m[1] + '年' + Number(m[2]) + '月' + Number(m[3]) + '日');
39
+ }
40
+ /* 「结构禁」与「参数开」是**两件事**——本件两处 S1 的根因,是把它们绑在了同一个 locked 开关上:
41
+ 于是需求正件 §1③ 的三句在任何可达状态都不同真——locked 真=结构禁真/参数开假;locked 假=结构禁假/参数开真。
42
+ 本件按下面这份分工落代码:
43
+ ① 结构禁=增删训练段/增删动作/换时段:由 lock() 分支与这些控件上的 disabled 挡;
44
+ ② 参数开=组数/次数/负重(含 RM↔kg 切换)/时长:**任何周都可改**,与 locked 无关。
45
+ 凡 lock() 分支,只许换「增删」那几处控件:
46
+ 不许把参数面换成纯文本、也不许摘掉它的坐标。 */
47
+ function lock(){ return S.weeks[week].locked; }
48
+ function days(){ return S.weeks[week].days; }
49
+ function day(d){ return days()[d]; }
50
+ function trainCount(){
51
+ var n = 0;
52
+ for (var w = 0; w < S.weeks.length; w++) for (var d = 0; d < 7; d++)
53
+ for (var s = 0; s < S.weeks[w].days[d].sessions.length; s++) n += 1;
54
+ return n;
55
+ }
56
+ function moveCount(){
57
+ var n = 0;
58
+ for (var w = 0; w < S.weeks.length; w++) for (var d = 0; d < 7; d++)
59
+ for (var i = 0; i < S.weeks[w].days[d].sessions.length; i++) n += S.weeks[w].days[d].sessions[i].moves.length;
60
+ return n;
61
+ }
62
+ /** 新周照抄母版:动作一样(负责人③「第 2 周只能看到和第一周一样的动作」),参数各周独立。 */
63
+ function cloneWeek(){
64
+ return { locked: false, days: JSON.parse(JSON.stringify(S.weeks[0].days)) };
65
+ }
66
+ function blankDays(){
67
+ var a = [], i;
68
+ for (i = 0; i < 7; i++) a.push({ sessions: [] });
69
+ return a;
70
+ }
71
+ function setWeeks(n){
72
+ n = Math.max(1, Math.min(52, n));
73
+ while (S.weeks.length < n) S.weeks.push(cloneWeek());
74
+ while (S.weeks.length > n) S.weeks.pop();
75
+ if (week > S.weeks.length - 1) week = S.weeks.length - 1;
76
+ render();
77
+ }
78
+ /* ── 渲染 ── */
79
+ function render(){
80
+ root.innerHTML = (S.weeks.length === 0 ? emptyHtml() : setupHtml() + tabsHtml() + weekHtml()) + pickerHtml();
81
+ syncCopy();
82
+ var s = root.querySelector('.pe-search');
83
+ if (s) s.focus();
84
+ }
85
+
86
+ function emptyHtml(){
87
+ return '<div class="pe-empty">'
88
+ + '<div class="pe-empty-ico"><svg viewBox="0 0 24 24" width="34" height="34" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="5" width="18" height="16" rx="3"/><path d="M8 3v4M16 3v4M3 10h18M12 14v4M10 16h4"/></svg></div>'
89
+ + '<p class="pe-empty-t">还没有训练计划</p>'
90
+ + '<p class="pe-empty-d">先排第 1 周。它就是母版,后面的周都照它走,各周只改时间、重量与次数这类参数。'
91
+ + '每天可以排 4 个时间段,新建时挑时段,建好后定时间、加动作。</p>'
92
+ + '<button type="button" class="pe-cta" data-act="start">定一份计划</button>'
93
+ + '</div>';
94
+ }
95
+
96
+ function setupHtml(){
97
+ return '<div class="pe-setup">'
98
+ + '<span class="pe-pair"><span class="pe-lab">总周数</span>'
99
+ + '<span class="pe-step">'
100
+ + '<button type="button" data-act="wk-minus" aria-label="减一周"' + (S.weeks.length <= 1 ? ' disabled' : '') + '>−</button>'
101
+ + '<span class="pe-step-n">' + S.weeks.length + ' 周</span>'
102
+ + '<button type="button" data-act="wk-plus" aria-label="加一周">+</button>'
103
+ + '</span></span>'
104
+ + '<span class="pe-pair"><span class="pe-lab">起日</span>'
105
+ + '<button type="button" class="pe-date" data-act="pick-start">' + esc(cnDate(S.startDate)) + '</button></span>'
106
+ + '<span class="pe-count">已排 ' + trainCount() + ' 次训练,' + moveCount() + ' 个动作</span>'
107
+ + '</div>';
108
+ }
109
+
110
+ function tabsHtml(){
111
+ var out = [];
112
+ for (var i = 0; i < S.weeks.length; i++){
113
+ out.push('<button type="button" class="pe-tab' + (i === week ? ' is-on' : '') + '" data-act="go-week" data-w="' + i + '"'
114
+ + ' aria-current="' + (i === week ? 'true' : 'false') + '">'
115
+ + '<span class="pe-tab-n">第 ' + (i + 1) + ' 周</span>'
116
+ + (i === 0 ? '<span class="pe-tab-b">母版</span>' : '')
117
+ + '</button>');
118
+ }
119
+ out.push('<button type="button" class="pe-tab pe-tab-add" data-act="wk-plus">加一周</button>');
120
+ return '<div class="pe-tabs" role="tablist">' + out.join('') + '</div>';
121
+ }
122
+
123
+ function weekHtml(){
124
+ var head = '<div class="pe-weekbar">'
125
+ + '<span class="pe-week-t">第 ' + (week + 1) + ' 周</span>'
126
+ + (lock()
127
+ ? '<span class="pe-lock">动作与第 1 周相同,只改参数</span>'
128
+ : '<span class="pe-master">母版周,动作在这一周排</span>')
129
+ + '</div>';
130
+ var tabs = [];
131
+ for (var d = 0; d < 7; d++){
132
+ var n = day(d).sessions.length;
133
+ tabs.push('<button type="button" class="pe-daytab' + (d === daySel ? ' is-on' : '') + '" data-act="go-day" data-d="' + d + '"'
134
+ + ' aria-current="' + (d === daySel ? 'true' : 'false') + '">' + DOW[d]
135
+ + (n > 0 ? '<span class="pe-daytab-n">' + n + '</span>' : '') + '</button>');
136
+ }
137
+ return head + '<div class="pe-daytabs">' + tabs.join('') + '</div>'
138
+ + '<div class="pe-week">' + dayHtml(daySel) + '</div>';
139
+ }
140
+
141
+ function dayHtml(d){
142
+ var ss = day(d).sessions, out = [], i;
143
+ for (i = 0; i < ss.length; i++) out.push(sessionHtml(d, i));
144
+ var full = ss.length >= MAXD;
145
+ out.push('<button type="button" class="pe-add" data-act="add-train" data-d="' + d + '"' + (full || lock() ? ' disabled' : '') + '>'
146
+ + (lock() ? '训练安排由第 1 周决定,这里只改参数' : (full ? '这天已排满 ' + MAXD + ' 个时间段' : '加一次训练')) + '</button>');
147
+ if (slotPick === d && !full && !lock()) out.push(slotPickHtml(d));
148
+ if (ss.length === 0 && !lock()) out.push('<p class="pe-hint">这天还没排。点「加一次训练」,先挑时段,再定时间、加动作。</p>');
149
+ return '<div class="pe-day"><div class="pe-day-main">' + out.join('') + '</div></div>';
150
+ }
151
+
152
+ /* 新建时间段先选时段:时段是分类签(tab)不是唯一键,一天里同一时段可建多段(靠起止时间区分)——
153
+ 四个都摆出来,一个不禁用;选完建段,建完定时间、加动作。 */
154
+ function slotPickHtml(d){
155
+ var out = [], i;
156
+ for (i = 0; i < SLOTS.length; i++){
157
+ out.push('<button type="button" class="pe-slot" data-act="pick-slot" data-d="' + d + '" data-slot="' + esc(SLOTS[i]) + '">'
158
+ + esc(SLOTS[i]) + '</button>');
159
+ }
160
+ return '<div class="pe-slotpick"><span class="pe-slotpick-t">新建时间段,选一个时段</span>'
161
+ + '<span class="pe-hint">同一时段可以建多段,靠起止时间区分</span>'
162
+ + '<span class="pe-slot-set">' + out.join('') + '</span>'
163
+ + '<button type="button" class="pe-x" data-act="cancel-slot" data-d="' + d + '" aria-label="不建了">✕</button></div>';
164
+ }
165
+
166
+ function sessionHtml(d, s){
167
+ var se = day(d).sessions[s], moves = [], i;
168
+ for (i = 0; i < se.moves.length; i++) moves.push(moveHtml(d, s, i));
169
+ var chips = [];
170
+ for (i = 0; i < SLOTS.length; i++){
171
+ chips.push('<button type="button" class="pe-slot' + (se.slot === SLOTS[i] ? ' is-on' : '') + '"'
172
+ + ' data-act="set-slot" data-d="' + d + '" data-s="' + s + '" data-slot="' + esc(SLOTS[i]) + '"'
173
+ + (lock() ? ' disabled' : '') + '>' + esc(SLOTS[i]) + '</button>');
174
+ }
175
+ var add = '<button type="button" class="pe-add sm" data-act="add-move" data-d="' + d + '" data-s="' + s + '"'
176
+ + (lock() || se.moves.length >= MAXM ? ' disabled' : '') + '>'
177
+ + (lock() ? '加动作' : (se.moves.length >= MAXM ? '这一节已满 ' + MAXM + ' 个动作' : '加动作')) + '</button>';
178
+ var del = lock() ? '' : '<button type="button" class="pe-x" data-act="del-train" data-d="' + d + '" data-s="' + s + '" aria-label="删掉这次训练">✕</button>';
179
+ /* 起止时间两格:它是参数不是结构,锁住的周照样可填(与组数/次数/时长同一口径);
180
+ 故这里**不跟 disabled**,也没有 data-m(探针只数动作行里的格,见门探针 inputs 注释)。 */
181
+ var time = '<span class="pe-time"><input type="time" value="' + esc(se.timeStart || '') + '"'
182
+ + ' data-act="set-tstart" data-d="' + d + '" data-s="' + s + '" aria-label="开始时间">'
183
+ + '<span class="pe-time-to">到</span>'
184
+ + '<input type="time" value="' + esc(se.timeEnd || '') + '"'
185
+ + ' data-act="set-tend" data-d="' + d + '" data-s="' + s + '" aria-label="结束时间"></span>';
186
+ return '<div class="pe-sess' + (lock() ? ' is-locked' : '') + '">'
187
+ + '<div class="pe-sess-head">'
188
+ + '<span class="pe-slot-set">' + chips.join('') + '</span>'
189
+ + time
190
+ + del
191
+ + '</div>'
192
+ + (moves.length > 0 ? '<ul class="pe-moves">' + moves.join('') + '</ul>' : '<p class="pe-hint">这一节还没有动作。</p>')
193
+ + add
194
+ + '</div>';
195
+ }
196
+
197
+ function moveHtml(d, s, m){
198
+ var mv = day(d).sessions[s].moves[m];
199
+ var tags = '<span class="pe-tag">' + esc(mv.part) + '</span><span class="pe-tag">' + esc(mv.type) + '</span>'
200
+ + (mv.equip ? '<span class="pe-tag">' + esc(mv.equip) + '</span>' : '');
201
+ var goal = mv.goal ? '<span class="pe-tag is-goal">' + esc(mv.goal) + '</span>' : '';
202
+ var params;
203
+ var at = ' data-d="' + d + '" data-s="' + s + '" data-m="' + m + '"';
204
+ if (mv.kind === '有氧'){
205
+ params = '<span class="pe-param"><input type="number" min="1" max="600" value="' + mv.minutes + '" data-act="set-min"' + at + ' aria-label="时长"><span class="pe-param-u">分钟</span></span>';
206
+ } else {
207
+ params = '<span class="pe-param"><input type="number" min="1" max="30" value="' + mv.sets + '" data-act="set-sets"' + at + ' aria-label="组数"><span class="pe-param-u">组</span></span>'
208
+ + '<span class="pe-param">乘<input type="number" min="1" max="100" value="' + mv.reps + '" data-act="set-reps"' + at + ' aria-label="每组次数"><span class="pe-param-u">次</span></span>'
209
+ + '<button type="button" class="pe-mode" data-act="toggle-mode"' + at + '>' + (mv.mode === 'rm' ? 'RM' : 'kg') + '</button>'
210
+ + '<span class="pe-param"><input type="number" min="0" max="500" step="0.5" value="' + mv.load + '" data-act="set-load"' + at + ' aria-label="负重"><span class="pe-param-u">' + (mv.mode === 'rm' ? 'RM' : 'kg') + '</span></span>';
211
+ }
212
+ /* 参数面**不跟着 lock() 走**(负责人③「任何动作内参数都可改」):锁住的周只锁结构——增删训练段与
213
+ 动作、换时段;第 1 周排好的动作,组数/次数/负重(含 RM↔kg 切换)/有氧时长照样是可填的格。
214
+ 坐标必须跟着出(data-d/data-s/data-m):缺了它,写进去的值会落到别的行——底部那张表是落库依据。 */
215
+ var del = lock() ? '<span class="pe-lockico" title="第 1 周之外不能改动作" aria-label="已锁"><svg viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="1.9"><rect x="5" y="11" width="14" height="9" rx="2"/><path d="M8 11V8a4 4 0 0 1 8 0v3"/></svg></span>'
216
+ : '<button type="button" class="pe-x" data-act="del-move"' + at + ' aria-label="删掉这个动作">✕</button>';
217
+ return '<li class="pe-move">'
218
+ + '<div class="pe-move-main"><div class="pe-move-nm">' + esc(mv.name) + '</div><div class="pe-move-tags">' + goal + tags + '</div></div>'
219
+ + '<div class="pe-params">' + params + '</div>'
220
+ + del + '</li>';
221
+ }
222
+
223
+ /* 筛选胶囊一颗:dim 只认 part/kind/equip 三档;点已选中的那颗即松开本档。 */
224
+ function fchip(dim, v){
225
+ var on = filt[dim] === v;
226
+ return '<button type="button" class="pe-filter' + (on ? ' is-on' : '') + '" data-act="filter" data-dim="' + dim + '" data-v="' + esc(v) + '">' + esc(v) + '</button>';
227
+ }
228
+ function pickerHtml(){
229
+ if (!picker) return '';
230
+ var ps = [], ks = [], es = [], seenP = {}, seenK = {}, seenE = {}, i, m0;
231
+ for (i = 0; i < LIB.length; i++){
232
+ m0 = LIB[i];
233
+ if (!seenP[m0.part]){ seenP[m0.part] = 1; ps.push(m0.part); }
234
+ if (!seenK[m0.kind]){ seenK[m0.kind] = 1; ks.push(m0.kind); }
235
+ if (m0.equip && !seenE[m0.equip]){ seenE[m0.equip] = 1; es.push(m0.equip); }
236
+ }
237
+ var chips = [];
238
+ chips.push('<button type="button" class="pe-filter' + (filt.part === null && filt.kind === null && filt.equip === null ? ' is-on' : '') + '" data-act="filter-clear">全部</button>');
239
+ for (i = 0; i < ps.length; i++) chips.push(fchip('part', ps[i]));
240
+ for (i = 0; i < ks.length; i++) chips.push(fchip('kind', ks[i]));
241
+ for (i = 0; i < es.length; i++) chips.push(fchip('equip', es[i]));
242
+ var used = day(picker.d).sessions[picker.s].moves.length;
243
+ var rows = [];
244
+ for (i = 0; i < LIB.length; i++){
245
+ var m = LIB[i];
246
+ if (filt.part !== null && m.part !== filt.part) continue;
247
+ if (filt.kind !== null && m.kind !== filt.kind) continue;
248
+ if (filt.equip !== null && m.equip !== filt.equip) continue;
249
+ if (query && m.name.toLowerCase().indexOf(query) < 0 && m.part.indexOf(query) < 0) continue;
250
+ rows.push('<li><button type="button" class="pe-lib-row" data-act="pick" data-name="' + esc(m.name) + '"' + (used >= MAXM ? ' disabled' : '') + '>'
251
+ + '<span class="pe-lib-nm">' + esc(m.name) + '</span>'
252
+ + '<span class="pe-lib-tags"><span class="pe-tag">' + esc(m.part) + '</span><span class="pe-tag">' + esc(m.kind) + '</span>'
253
+ + (m.equip ? '<span class="pe-tag">' + esc(m.equip) + '</span>' : '') + '</span>'
254
+ + '</button></li>');
255
+ }
256
+ var list = rows.length ? '<ul class="pe-lib">' + rows.join('') + '</ul>'
257
+ : '<p class="pe-lib-empty">这个筛选下没有动作。换个筛选,或把搜索词清掉。</p>';
258
+ return '<div class="pe-sheet">'
259
+ + '<div class="pe-sheet-box">'
260
+ + '<div class="pe-sheet-head"><span class="pe-sheet-t">选动作</span>'
261
+ + '<span class="pe-sheet-sub">' + DOW[picker.d] + ' 的 ' + esc(day(picker.d).sessions[picker.s].slot) + ',这一节已有 ' + used + ' 个</span>'
262
+ + '<button type="button" class="pe-x" data-act="close-picker" aria-label="关掉">✕</button></div>'
263
+ + '<div class="pe-sheet-filters">' + chips.join('') + '</div>'
264
+ + '<input class="pe-search" type="search" placeholder="搜动作名或部位" value="' + esc(query) + '" data-act="search">'
265
+ + list
266
+ + '</div></div>';
267
+ }
268
+
269
+ /* ── 产物:一张规范表 + 一段缩进文本(**不用分隔符**,并列靠换行与缩进) ── */
270
+ /* 时间上屏:起止都有就连起来,只一边就有哪边说哪边,两边都没有就直说没定(不留空让人猜)。 */
271
+ function timeText(a, b){
272
+ a = a || ''; b = b || '';
273
+ if (a === '' && b === '') return '没定时间';
274
+ if (a !== '' && b !== '') return a + '到' + b;
275
+ if (a !== '') return a + '起';
276
+ return '到' + b;
277
+ }
278
+ function planRows(){
279
+ var out = [], w, d, s, i, j;
280
+ for (w = 0; w < S.weeks.length; w++){
281
+ for (d = 0; d < 7; d++){
282
+ for (s = 0; s < S.weeks[w].days[d].sessions.length; s++){
283
+ var se = S.weeks[w].days[d].sessions[s];
284
+ for (i = 0; i < se.moves.length; i++){
285
+ var mv = se.moves[i];
286
+ out.push({
287
+ week: w + 1, dow: DOW[d], slot: se.slot, time: timeText(se.timeStart, se.timeEnd),
288
+ name: mv.name, part: mv.part, type: mv.type,
289
+ amount: mv.kind === '有氧' ? (mv.minutes + ' 分钟')
290
+ : (mv.sets + ' 组乘 ' + mv.reps + ' 次'),
291
+ load: mv.kind === '有氧' ? '' : (mv.mode === 'rm' ? (mv.load + ' RM') : (mv.load ? (mv.load + ' kg') : '自重')),
292
+ });
293
+ }
294
+ }
295
+ }
296
+ }
297
+ return out;
298
+ }
299
+ function promptText(){
300
+ var rows = planRows(), lines = [], curWeek = 0, curDay = '', i;
301
+ lines.push('请你加载技能 卡路里,执行唤醒词「' + S.wakeWord + '」。');
302
+ lines.push('');
303
+ lines.push('计划名称:' + S.title);
304
+ lines.push('开始日期:' + cnDate(S.startDate));
305
+ lines.push('总周数:' + S.weeks.length + ' 周');
306
+ lines.push('');
307
+ for (i = 0; i < rows.length; i++){
308
+ var r = rows[i];
309
+ if (r.week !== curWeek){ lines.push('第 ' + r.week + ' 周'); curWeek = r.week; curDay = ''; }
310
+ if (r.dow !== curDay){ lines.push(' ' + r.dow); curDay = r.dow; }
311
+ lines.push(' ' + r.slot + (r.time === '没定时间' ? '' : (' ' + r.time)) + ' ' + r.name + ' ' + r.part + ' ' + r.type + ' ' + r.amount + (r.load ? (' ' + r.load) : ''));
312
+ }
313
+ lines.push('');
314
+ lines.push('请按这份表落库,完成后给我回执 HTML。');
315
+ return lines.join('\\n');
316
+ }
317
+ function syncCopy(){
318
+ var btn = document.querySelector('[data-action-id="ilife-help-copy-prompt"]');
319
+ if (btn) btn.setAttribute('data-t', promptText());
320
+ var out = document.getElementById('pe-out-body');
321
+ if (!out) return;
322
+ var rows = planRows(), tr = [], i;
323
+ for (i = 0; i < rows.length; i++){
324
+ var r = rows[i];
325
+ tr.push('<tr><td>第 ' + r.week + ' 周</td><td>' + esc(r.dow) + '</td><td>' + esc(r.slot) + '</td><td>' + esc(r.name)
326
+ + '</td><td>' + esc(r.part) + '</td><td>' + esc(r.type) + '</td><td>' + esc(r.amount) + '</td><td>' + esc(r.load)
327
+ + '</td><td>' + esc(r.time) + '</td></tr>');
328
+ }
329
+ out.innerHTML = '<table class="ilife-block-data-table"><caption class="ilife-block-data-table-caption">计划明细(' + rows.length + ' 行)</caption>'
330
+ + '<thead><tr><th>周次</th><th>星期</th><th>时段</th><th>动作</th><th>部位</th><th>类型</th><th>量</th><th>负重</th><th>时间</th></tr></thead>'
331
+ + '<tbody>' + (tr.length ? tr.join('') : '<tr><td colspan="9">还没有排动作</td></tr>') + '</tbody></table>';
332
+ }
333
+
334
+ /* ── 事件:一处委派,零内联处理器 ── */
335
+ root.addEventListener('click', function(e){
336
+ var el = e.target.closest ? e.target.closest('[data-act]') : null;
337
+ if (!el) return;
338
+ var act = el.getAttribute('data-act');
339
+ var w = Number(el.getAttribute('data-w')), d = Number(el.getAttribute('data-d')), s = Number(el.getAttribute('data-s')), m = Number(el.getAttribute('data-m'));
340
+ if (act === 'start'){ S.weeks = [ { locked: false, days: blankDays() } ]; setWeeks(4); return; }
341
+ if (act === 'wk-plus'){ setWeeks(S.weeks.length + 1); return; }
342
+ if (act === 'wk-minus'){ setWeeks(S.weeks.length - 1); return; }
343
+ if (act === 'go-week'){ week = w; picker = null; slotPick = null; render(); return; }
344
+ if (act === 'go-day'){ daySel = d; picker = null; slotPick = null; render(); return; }
345
+ if (act === 'add-train'){
346
+ if (lock()) return;
347
+ if (day(d).sessions.length >= MAXD) return;
348
+ slotPick = d; render(); return;
349
+ }
350
+ /* 新建时间段落子:锁周与满员在上面那颗钮就拦住了,这里再守一次(合成派发点 disabled 钮的旧账 #558 不在本题扩散)。 */
351
+ if (act === 'pick-slot'){
352
+ if (lock()) return;
353
+ var wantSlot = el.getAttribute('data-slot');
354
+ if (day(d).sessions.length >= MAXD){ slotPick = null; render(); return; }
355
+ day(d).sessions.push({ slot: wantSlot, timeStart: '', timeEnd: '', moves: [] });
356
+ slotPick = null; render(); return;
357
+ }
358
+ if (act === 'cancel-slot'){ slotPick = null; render(); return; }
359
+ if (act === 'del-train'){ if (lock()) return; day(d).sessions.splice(s, 1); render(); return; }
360
+ if (act === 'set-slot'){
361
+ if (lock()) return;
362
+ var want = el.getAttribute('data-slot');
363
+ day(d).sessions[s].slot = want; render(); return;
364
+ }
365
+ if (act === 'add-move'){ picker = { w: week, d: d, s: s }; query = ''; filt = { part: null, kind: null, equip: null }; render(); return; }
366
+ if (act === 'close-picker'){ picker = null; render(); return; }
367
+ if (act === 'filter'){
368
+ var dim = el.getAttribute('data-dim'), vv = el.getAttribute('data-v');
369
+ if (dim !== 'part' && dim !== 'kind' && dim !== 'equip') return;
370
+ filt[dim] = (filt[dim] === vv ? null : vv); render(); return;
371
+ }
372
+ if (act === 'filter-clear'){ filt = { part: null, kind: null, equip: null }; render(); return; }
373
+ if (act === 'pick'){
374
+ if (!picker) return;
375
+ if (lock()) return;
376
+ var name = el.getAttribute('data-name'), hit = null, i;
377
+ for (i = 0; i < LIB.length; i++) if (LIB[i].name === name) hit = LIB[i];
378
+ if (!hit) return;
379
+ var se = day(picker.d).sessions[picker.s];
380
+ if (se.moves.length >= MAXM) return;
381
+ se.moves.push({ name: hit.name, part: hit.part, type: hit.type, equip: hit.equip, kind: hit.kind, goal: hit.goal || '',
382
+ sets: 4, reps: 8, mode: 'kg', load: 0, minutes: hit.kind === '有氧' ? 30 : 0 });
383
+ picker = null; render(); return;
384
+ }
385
+ if (act === 'del-move'){ if (lock()) return; day(d).sessions[s].moves.splice(m, 1); render(); return; }
386
+ if (act === 'toggle-mode'){
387
+ var mv = day(d).sessions[s].moves[m];
388
+ mv.mode = mv.mode === 'rm' ? 'kg' : 'rm'; render(); return;
389
+ }
390
+ if (act === 'pick-start'){
391
+ var v = window.prompt('开始日期(写成 2026-09-07 这种)', S.startDate);
392
+ if (v && /^\\d{4}-\\d{2}-\\d{2}$/.test(v)){ S.startDate = v; render(); }
393
+ return;
394
+ }
395
+ });
396
+ root.addEventListener('input', function(e){
397
+ var el = e.target, act = el.getAttribute && el.getAttribute('data-act');
398
+ if (!act) return;
399
+ if (act === 'search'){ query = String(el.value || '').trim().toLowerCase(); render(); return; }
400
+ /* 起止时间是参数:锁周不拦(与组数/次数同口径),只写回状态并刷新产物,不整页重渲(焦点不丢)。 */
401
+ if (act === 'set-tstart' || act === 'set-tend'){
402
+ var td = Number(el.getAttribute('data-d')), ts = Number(el.getAttribute('data-s'));
403
+ var tse = (day(td).sessions || [])[ts];
404
+ if (!tse) return;
405
+ if (act === 'set-tstart') tse.timeStart = String(el.value || '');
406
+ else tse.timeEnd = String(el.value || '');
407
+ syncCopy(); return;
408
+ }
409
+ var d = Number(el.getAttribute('data-d')), s = Number(el.getAttribute('data-s')), m = Number(el.getAttribute('data-m'));
410
+ var mv = (day(d).sessions[s] || { moves: [] }).moves[m];
411
+ if (!mv) return;
412
+ var v = Number(el.value);
413
+ if (isNaN(v)) return;
414
+ if (act === 'set-sets') mv.sets = v;
415
+ if (act === 'set-reps') mv.reps = v;
416
+ if (act === 'set-load') mv.load = v;
417
+ if (act === 'set-min') mv.minutes = v;
418
+ syncCopy();
419
+ });
420
+ root.addEventListener('keydown', function(e){
421
+ if (e.key === 'Escape' && picker){ picker = null; render(); }
422
+ });
423
+
424
+ render();
425
+ })();
426
+ `;
427
+ //# sourceMappingURL=planEditorRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planEditorRuntime.js","sourceRoot":"","sources":["../../src/workout/planEditorRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Z7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"planStore.d.ts","sourceRoot":"","sources":["../../src/workout/planStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planStore.d.ts","sourceRoot":"","sources":["../../src/workout/planStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAMhD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAInH,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAUvD,CAAC;AAEF,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKlE;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzD;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC9I,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAAO,GAAG,cAAc,CA2FvG;AAGD,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC;IACzB,MAAM,CAAC,EAAE,IAAI,CAAC;CACf;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;CAAO,GAAG,eAAe,CA6BzI;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,YAAY,GAAG;IAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,cAAc,EAAE,CAAA;CAAE,CActG;AAED,QAAA,MAAM,aAAa,4DAA6D,CAAC;AAEjF,wBAAgB,YAAY,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,OAAO,CAQvH;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;CAC5B;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,eAAe,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAahI;AAID,wBAAgB,aAAa,CAC3B,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EACrD,MAAM,EAAE,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC,GACnK,OAAO,CAcT;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAK5F;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAUjI;AAED,gEAAgE;AAChE,wBAAgB,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAGpG;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAKhF;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,GAAG;IAAE,cAAc,EAAE,MAAM,CAAA;CAAE,CAInF;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,YAAY,GAAG;IAAE,aAAa,EAAE,aAAa,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,aAAa,CAAA;CAAE,CAS9H;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAwBjI;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAOzN"}
@@ -1,6 +1,7 @@
1
1
  import { FetchError } from '../fetch/errors.js';
2
2
  import { dayPhrase } from './dayPhrase.js';
3
3
  import { typeZh } from './movementType.js';
4
+ import { todayISO } from '../shared/time.js';
4
5
  export const LEVEL_CONFIG = {
5
6
  '新手': { maxPerPartPerDay: 6, maxPerPartPerWeek: 10, restHours: 72 },
6
7
  '中手': { maxPerPartPerDay: 10, maxPerPartPerWeek: 20, restHours: 48 },
@@ -125,9 +126,6 @@ export function validatePlan(plan, opts = {}) {
125
126
  }
126
127
  return { errors, warnings };
127
128
  }
128
- function todayISO() {
129
- return new Date().toISOString().slice(0, 10);
130
- }
131
129
  export function writePlan(db, plan, opts = {}) {
132
130
  const { errors, warnings } = validatePlan(plan, opts);
133
131
  if (opts.dryRun)
@@ -1 +1 @@
1
- {"version":3,"file":"planStore.js","sourceRoot":"","sources":["../../src/workout/planStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planStore.js","sourceRoot":"","sources":["../../src/workout/planStore.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * `statusCard`/`reconcileDisclosure`),只换内容:老实物 `crud_receipt.html` 的
6
6
  * 标识卡+差异卡落点为状态卡+改动对照表,M5 四要素(记录编号/写入时间/影响行数/
7
7
  * 写入字段)全部上页;操作名一律中文,不出现 `op=` 裸词与 `# 成功 ·` 前缀。
8
- * 底部复制区与场景 05 各页同形(共用件 `../render/planCopyBlock.js` 的冻结双按钮,
8
+ * 底部复制区与场景 05 各页同形(共用件 `./planCopyBlock.js` 的冻结双按钮,
9
9
  * 不出三格式菜单)。必须在 `withM5` 之后调用(见 `src/cli/write.ts`)。
10
10
  */
11
11
  import type { DatabaseSync } from 'node:sqlite';
@@ -2,7 +2,7 @@ import { renderDataTable, renderKpiGrid } from 'base-paint/blocks';
2
2
  import { getPlan } from './planStore.js';
3
3
  import { assembleDocPage } from '../shared/docPage.js';
4
4
  import { pageChromeCss } from '../render/pageChromeCss.js';
5
- import { planCopyBlock } from '../render/planCopyBlock.js';
5
+ import { planCopyBlock } from './planCopyBlock.js';
6
6
  import { copyLog } from '../shared/copyArea.js';
7
7
  import { reconcileDisclosure, statusCard } from '../shared/receiptParts.js';
8
8
  import { commandLine } from '../shared/writeParts.js';
@@ -1 +1 @@
1
- {"version":3,"file":"receipt.js","sourceRoot":"","sources":["../../src/workout/receipt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receipt.js","sourceRoot":"","sources":["../../src/workout/receipt.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGnE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,GAAG,OAAO,CAAC;AAC5B,MAAM,SAAS,GAAG,SAAS,CAAC;AAC5B,MAAM,SAAS,GAAG,YAAY,CAAC;AAE/B,oDAAoD;AACpD,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC;IACxD,0BAA0B;IAC1B,2BAA2B;IAC3B,+BAA+B;IAC/B,mCAAmC;IACnC,+BAA+B;IAC/B,6BAA6B;IAC7B,iCAAiC;IACjC,iCAAiC;IACjC,sCAAsC;IACtC,6BAA6B;CAC9B,CAAC,CAAC;AAEH;;;yCAGyC;AACzC,MAAM,uBAAuB,GAAG,SAAS,CAAC;AAC1C,MAAM,qBAAqB,GAAgC,IAAI,GAAG,CAAC;IACjE,CAAC,6BAA6B,EAAE,SAAS,CAAC;CAC3C,CAAC,CAAC;AAEH,qCAAqC;AACrC,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,uBAAuB,CAAC;AACnE,CAAC;AAED,4CAA4C;AAC5C,SAAS,gBAAgB,CAAC,EAAgB;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IACzB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,eAAe,CAAC;YACrB,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;YAC7D,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC;YAC7C,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,eAAe,CAAC;QACrB,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QAC7D,IAAI,EAAE;YACJ,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,CAAC,EAAE;YACrD,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,EAAE;SAC9C;QACD,0DAA0D;QAC1D,0DAA0D;QAC1D,OAAO,EAAE,MAAM;KAChB,CAAC,CAAC;AACL,CAAC;AAED;;mCAEmC;AACnC,SAAS,UAAU,CAAC,OAAoB;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK;SACvB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;SACxC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACZ,KAAK,EAAE,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM;QAC5D,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,EAAE;QACvB,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,EAAE;KACxB,CAAC,CAAC,CAAC;IACN,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG;QACd,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;QAC7B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;KAC/B,CAAC;IACF,OAAO,eAAe,CAAC;QACrB,OAAO;QACP,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,kBAAkB;cACzB,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG;KACrD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAC7B,EAAgB,EAAE,GAAW,EAAE,MAA+B,EAAE,OAAoB,EAAE,OAAe;IAErG,MAAM,QAAQ,GAAyB;QACrC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ;QACpF,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE;KAC7C,CAAC;IACF,MAAM,OAAO,GAAG;QACd,aAAa,CAAC;YACZ,UAAU,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC;YACzC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE;YACxE;gBACE,KAAK,EAAE,MAAM;gBACb,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI;gBAC1C,4DAA4D;gBAC5D,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK;aAC3F;SACF,CAAC;QACF,gBAAgB,CAAC,EAAE,CAAC;QACpB,UAAU,CAAC,OAAO,CAAC;QACnB,mBAAmB,CAAC,OAAO,CAAC;QAC5B,aAAa,CAAC;YACZ,QAAQ;YACR,GAAG,EAAE,OAAO,CAAC;gBACX,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;gBAC5D,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW;aACtD,CAAC;SACH,CAAC;KACH,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACX,OAAO,eAAe,CAAC;QACrB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,MAAM;QACf,mDAAmD;QACnD,6DAA6D;QAC7D,QAAQ,EAAE,OAAO,CAAC,KAAK;QACvB,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO;KACtC,CAAC,CAAC;AACL,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EAAE,MAA+B,EAAE,OAAoB,EAAE,EAAgB;IAEpF,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,sBAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AACpF,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /** 计划复盘(HELP 场景 05「健身计划」下一级「计划复盘」):`calorie.view.exercise-review` 读。
2
2
  *
3
3
  * 窗口口径走共用位 `shared/params.ts` 的 `defaultRange`(恰与分派层原来那几行同一份口径),
4
- * 复盘取数住视图层 `render/exercisePort.ts` 的 `buildReviewView`、整页住 `render/reviewDocs.ts`
4
+ * 复盘取数住视图层 `render/exercisePort.ts` 的 `buildReviewView`、整页住同目录 `reviewDocs.ts`
5
5
  * 的 `buildReviewDoc`(T351-v7 从 `render/sportPortDocs.ts` 搬进复盘族自己的姊妹件)——
6
6
  * 本能力只调公开函数,不另写一份「计划 vs 实际」的算式。
7
7
  */
@@ -1,5 +1,5 @@
1
1
  import { buildReviewView } from '../render/exercisePort.js';
2
- import { buildReviewDoc } from '../render/reviewDocs.js';
2
+ import { buildReviewDoc } from './reviewDocs.js';
3
3
  import { defaultRange, nums } from '../shared/params.js';
4
4
  /** `calorie.view.exercise-review` · 计划复盘(窗口内 计划 vs 实际:场次/动作两路完成率)。 */
5
5
  export function viewExerciseReview(params, db) {
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/workout/review.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEzD,sEAAsE;AACtE,MAAM,UAAU,kBAAkB,CAAC,MAA+B,EAAE,EAAgB;IAClF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,eAAe,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC;QACnB,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;QAC9D,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;QACpE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;KACzD,CAAC,CAAC;IACH,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/workout/review.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEzD,sEAAsE;AACtE,MAAM,UAAU,kBAAkB,CAAC,MAA+B,EAAE,EAAgB;IAClF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,eAAe,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC;QACnB,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;QAC9D,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;QACpE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;KACzD,CAAC,CAAC;IACH,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC"}