skill-calorie 0.2.3 → 0.2.4

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 (1270) hide show
  1. package/SKILL.md +469 -118
  2. package/dist/.gen-inputs.json +170 -0
  3. package/dist/analysis/commands.d.ts +62 -0
  4. package/dist/analysis/commands.d.ts.map +1 -0
  5. package/dist/analysis/commands.js +386 -0
  6. package/dist/analysis/commands.js.map +1 -0
  7. package/dist/analysis/contraindications.d.ts.map +1 -1
  8. package/dist/analysis/contraindications.js +16 -12
  9. package/dist/analysis/contraindications.js.map +1 -1
  10. package/dist/analysis/cross.d.ts +3 -0
  11. package/dist/analysis/cross.d.ts.map +1 -1
  12. package/dist/analysis/cross.js +54 -26
  13. package/dist/analysis/cross.js.map +1 -1
  14. package/dist/analysis/dashboard.d.ts.map +1 -1
  15. package/dist/analysis/dashboard.js +3 -2
  16. package/dist/analysis/dashboard.js.map +1 -1
  17. package/dist/analysis/exerciseReview.js +1 -1
  18. package/dist/analysis/exerciseReview.js.map +1 -1
  19. package/dist/analysis/healthPlate.d.ts +21 -0
  20. package/dist/analysis/healthPlate.d.ts.map +1 -0
  21. package/dist/analysis/healthPlate.js +41 -0
  22. package/dist/analysis/healthPlate.js.map +1 -0
  23. package/dist/analysis/historyStore.d.ts +30 -0
  24. package/dist/analysis/historyStore.d.ts.map +1 -0
  25. package/dist/analysis/historyStore.js +32 -0
  26. package/dist/analysis/historyStore.js.map +1 -0
  27. package/dist/analysis/index.d.ts +23 -0
  28. package/dist/analysis/index.d.ts.map +1 -0
  29. package/dist/analysis/index.js +23 -0
  30. package/dist/analysis/index.js.map +1 -0
  31. package/dist/analysis/multiTrend.d.ts +67 -0
  32. package/dist/analysis/multiTrend.d.ts.map +1 -0
  33. package/dist/analysis/multiTrend.js +106 -0
  34. package/dist/analysis/multiTrend.js.map +1 -0
  35. package/dist/analysis/multiTrendPage.d.ts +4 -0
  36. package/dist/analysis/multiTrendPage.d.ts.map +1 -0
  37. package/dist/analysis/multiTrendPage.js +502 -0
  38. package/dist/analysis/multiTrendPage.js.map +1 -0
  39. package/dist/analysis/reportDoc.d.ts +12 -0
  40. package/dist/analysis/reportDoc.d.ts.map +1 -0
  41. package/dist/analysis/reportDoc.js +244 -0
  42. package/dist/analysis/reportDoc.js.map +1 -0
  43. package/dist/analysis/reportDocBmi.d.ts +4 -0
  44. package/dist/analysis/reportDocBmi.d.ts.map +1 -0
  45. package/dist/analysis/reportDocBmi.js +104 -0
  46. package/dist/analysis/reportDocBmi.js.map +1 -0
  47. package/dist/analysis/reportDocParts.d.ts +77 -0
  48. package/dist/analysis/reportDocParts.d.ts.map +1 -0
  49. package/dist/analysis/reportDocParts.js +249 -0
  50. package/dist/analysis/reportDocParts.js.map +1 -0
  51. package/dist/analysis/reportDocScore.d.ts +8 -0
  52. package/dist/analysis/reportDocScore.d.ts.map +1 -0
  53. package/dist/analysis/reportDocScore.js +223 -0
  54. package/dist/analysis/reportDocScore.js.map +1 -0
  55. package/dist/analysis/reportDocScoreSeries.d.ts +3 -0
  56. package/dist/analysis/reportDocScoreSeries.d.ts.map +1 -0
  57. package/dist/analysis/reportDocScoreSeries.js +27 -0
  58. package/dist/analysis/reportDocScoreSeries.js.map +1 -0
  59. package/dist/analysis/reportDocTracked.d.ts +10 -0
  60. package/dist/analysis/reportDocTracked.d.ts.map +1 -0
  61. package/dist/analysis/reportDocTracked.js +195 -0
  62. package/dist/analysis/reportDocTracked.js.map +1 -0
  63. package/dist/analysis/reportPlate.d.ts +163 -0
  64. package/dist/analysis/reportPlate.d.ts.map +1 -0
  65. package/dist/analysis/reportPlate.js +251 -0
  66. package/dist/analysis/reportPlate.js.map +1 -0
  67. package/dist/analysis/routes.d.ts +18 -0
  68. package/dist/analysis/routes.d.ts.map +1 -0
  69. package/dist/analysis/routes.js +178 -0
  70. package/dist/analysis/routes.js.map +1 -0
  71. package/dist/analysis/series.d.ts +31 -6
  72. package/dist/analysis/series.d.ts.map +1 -1
  73. package/dist/analysis/series.js +121 -24
  74. package/dist/analysis/series.js.map +1 -1
  75. package/dist/analysis/simulate.d.ts.map +1 -1
  76. package/dist/analysis/simulate.js +17 -6
  77. package/dist/analysis/simulate.js.map +1 -1
  78. package/dist/analysis/simulate2.d.ts.map +1 -1
  79. package/dist/analysis/simulate2.js +43 -11
  80. package/dist/analysis/simulate2.js.map +1 -1
  81. package/dist/analysis/trend.d.ts +9 -1
  82. package/dist/analysis/trend.d.ts.map +1 -1
  83. package/dist/analysis/trend.js +24 -8
  84. package/dist/analysis/trend.js.map +1 -1
  85. package/dist/analysis/utils.d.ts +40 -2
  86. package/dist/analysis/utils.d.ts.map +1 -1
  87. package/dist/analysis/utils.js +63 -2
  88. package/dist/analysis/utils.js.map +1 -1
  89. package/dist/body/bodyDocs.d.ts +4 -0
  90. package/dist/body/bodyDocs.d.ts.map +1 -0
  91. package/dist/body/bodyDocs.js +284 -0
  92. package/dist/body/bodyDocs.js.map +1 -0
  93. package/dist/body/bodyPlate.d.ts +145 -0
  94. package/dist/body/bodyPlate.d.ts.map +1 -0
  95. package/dist/body/bodyPlate.js +243 -0
  96. package/dist/body/bodyPlate.js.map +1 -0
  97. package/dist/body/bodyReadUi.d.ts +47 -0
  98. package/dist/body/bodyReadUi.d.ts.map +1 -0
  99. package/dist/body/bodyReadUi.js +164 -0
  100. package/dist/body/bodyReadUi.js.map +1 -0
  101. package/dist/body/commands.d.ts +29 -0
  102. package/dist/body/commands.d.ts.map +1 -0
  103. package/dist/body/commands.js +18 -0
  104. package/dist/body/commands.js.map +1 -0
  105. package/dist/body/compare.d.ts +62 -0
  106. package/dist/body/compare.d.ts.map +1 -0
  107. package/dist/body/compare.js +162 -0
  108. package/dist/body/compare.js.map +1 -0
  109. package/dist/body/compareCompositionDoc.d.ts +3 -0
  110. package/dist/body/compareCompositionDoc.d.ts.map +1 -0
  111. package/dist/body/compareCompositionDoc.js +99 -0
  112. package/dist/body/compareCompositionDoc.js.map +1 -0
  113. package/dist/body/compareMeasureDoc.d.ts +3 -0
  114. package/dist/body/compareMeasureDoc.d.ts.map +1 -0
  115. package/dist/body/compareMeasureDoc.js +91 -0
  116. package/dist/body/compareMeasureDoc.js.map +1 -0
  117. package/dist/body/compareUi.d.ts +12 -0
  118. package/dist/body/compareUi.d.ts.map +1 -0
  119. package/dist/body/compareUi.js +27 -0
  120. package/dist/body/compareUi.js.map +1 -0
  121. package/dist/body/index.d.ts +21 -0
  122. package/dist/body/index.d.ts.map +1 -0
  123. package/dist/body/index.js +22 -0
  124. package/dist/body/index.js.map +1 -0
  125. package/dist/body/log.d.ts +29 -0
  126. package/dist/body/log.d.ts.map +1 -0
  127. package/dist/body/log.js +196 -0
  128. package/dist/body/log.js.map +1 -0
  129. package/dist/body/receipt.d.ts +52 -0
  130. package/dist/body/receipt.d.ts.map +1 -0
  131. package/dist/body/receipt.js +248 -0
  132. package/dist/body/receipt.js.map +1 -0
  133. package/dist/body/receiptData.d.ts +46 -0
  134. package/dist/body/receiptData.d.ts.map +1 -0
  135. package/dist/body/receiptData.js +107 -0
  136. package/dist/body/receiptData.js.map +1 -0
  137. package/dist/body/receiptUi.d.ts +9 -0
  138. package/dist/body/receiptUi.d.ts.map +1 -0
  139. package/dist/body/receiptUi.js +75 -0
  140. package/dist/body/receiptUi.js.map +1 -0
  141. package/dist/body/remove.d.ts +21 -0
  142. package/dist/body/remove.d.ts.map +1 -0
  143. package/dist/body/remove.js +78 -0
  144. package/dist/body/remove.js.map +1 -0
  145. package/dist/body/routes.d.ts +10 -0
  146. package/dist/body/routes.d.ts.map +1 -0
  147. package/dist/body/routes.js +20 -0
  148. package/dist/body/routes.js.map +1 -0
  149. package/dist/body/view.d.ts +21 -0
  150. package/dist/body/view.d.ts.map +1 -0
  151. package/dist/body/view.js +50 -0
  152. package/dist/body/view.js.map +1 -0
  153. package/dist/body/wizard.d.ts +14 -0
  154. package/dist/body/wizard.d.ts.map +1 -0
  155. package/dist/body/wizard.js +21 -0
  156. package/dist/body/wizard.js.map +1 -0
  157. package/dist/body/wizardDocs.d.ts +4 -0
  158. package/dist/body/wizardDocs.d.ts.map +1 -0
  159. package/dist/body/wizardDocs.js +260 -0
  160. package/dist/body/wizardDocs.js.map +1 -0
  161. package/dist/body/wizardPlate.d.ts +146 -0
  162. package/dist/body/wizardPlate.d.ts.map +1 -0
  163. package/dist/body/wizardPlate.js +260 -0
  164. package/dist/body/wizardPlate.js.map +1 -0
  165. package/dist/body/wizardPrompt.d.ts +52 -0
  166. package/dist/body/wizardPrompt.d.ts.map +1 -0
  167. package/dist/body/wizardPrompt.js +146 -0
  168. package/dist/body/wizardPrompt.js.map +1 -0
  169. package/dist/body/wizardUi.d.ts +11 -0
  170. package/dist/body/wizardUi.d.ts.map +1 -0
  171. package/dist/body/wizardUi.js +35 -0
  172. package/dist/body/wizardUi.js.map +1 -0
  173. package/dist/cli/cmd_read.d.ts +7 -26
  174. package/dist/cli/cmd_read.d.ts.map +1 -1
  175. package/dist/cli/cmd_read.js +46 -1081
  176. package/dist/cli/cmd_read.js.map +1 -1
  177. package/dist/cli/delivery.d.ts +34 -0
  178. package/dist/cli/delivery.d.ts.map +1 -0
  179. package/dist/cli/delivery.js +223 -0
  180. package/dist/cli/delivery.js.map +1 -0
  181. package/dist/cli/keys.d.ts +303 -165
  182. package/dist/cli/keys.d.ts.map +1 -1
  183. package/dist/cli/keys.js +101 -77
  184. package/dist/cli/keys.js.map +1 -1
  185. package/dist/cli/legacy/index.d.ts +25 -0
  186. package/dist/cli/legacy/index.d.ts.map +1 -0
  187. package/dist/cli/legacy/index.js +37 -0
  188. package/dist/cli/legacy/index.js.map +1 -0
  189. package/dist/cli/legacy/routes/index.d.ts +8 -0
  190. package/dist/cli/legacy/routes/index.d.ts.map +1 -0
  191. package/dist/cli/legacy/routes/index.js +23 -0
  192. package/dist/cli/legacy/routes/index.js.map +1 -0
  193. package/dist/cli/legacy/routes/scene-01.d.ts +12 -0
  194. package/dist/cli/legacy/routes/scene-01.d.ts.map +1 -0
  195. package/dist/cli/legacy/routes/scene-01.js +2 -0
  196. package/dist/cli/legacy/routes/scene-01.js.map +1 -0
  197. package/dist/cli/legacy/routes/scene-02.d.ts +18 -0
  198. package/dist/cli/legacy/routes/scene-02.d.ts.map +1 -0
  199. package/dist/cli/legacy/routes/scene-02.js +2 -0
  200. package/dist/cli/legacy/routes/scene-02.js.map +1 -0
  201. package/dist/cli/legacy/routes/scene-03.d.ts +13 -0
  202. package/dist/cli/legacy/routes/scene-03.d.ts.map +1 -0
  203. package/dist/cli/legacy/routes/scene-03.js +2 -0
  204. package/dist/cli/legacy/routes/scene-03.js.map +1 -0
  205. package/dist/cli/legacy/routes/scene-04.d.ts +10 -0
  206. package/dist/cli/legacy/routes/scene-04.d.ts.map +1 -0
  207. package/dist/cli/legacy/routes/scene-04.js +2 -0
  208. package/dist/cli/legacy/routes/scene-04.js.map +1 -0
  209. package/dist/cli/legacy/routes/scene-05.d.ts +10 -0
  210. package/dist/cli/legacy/routes/scene-05.d.ts.map +1 -0
  211. package/dist/cli/legacy/routes/scene-05.js +2 -0
  212. package/dist/cli/legacy/routes/scene-05.js.map +1 -0
  213. package/dist/cli/legacy/routes/scene-06.d.ts +10 -0
  214. package/dist/cli/legacy/routes/scene-06.d.ts.map +1 -0
  215. package/dist/cli/legacy/routes/scene-06.js +2 -0
  216. package/dist/cli/legacy/routes/scene-06.js.map +1 -0
  217. package/dist/cli/legacy/routes/scene-07.d.ts +10 -0
  218. package/dist/cli/legacy/routes/scene-07.d.ts.map +1 -0
  219. package/dist/cli/legacy/routes/scene-07.js +2 -0
  220. package/dist/cli/legacy/routes/scene-07.js.map +1 -0
  221. package/dist/cli/legacy/routes/scene-08.d.ts +12 -0
  222. package/dist/cli/legacy/routes/scene-08.d.ts.map +1 -0
  223. package/dist/cli/legacy/routes/scene-08.js +2 -0
  224. package/dist/cli/legacy/routes/scene-08.js.map +1 -0
  225. package/dist/cli/legacy/routes/scene-09.d.ts +12 -0
  226. package/dist/cli/legacy/routes/scene-09.d.ts.map +1 -0
  227. package/dist/cli/legacy/routes/scene-09.js +2 -0
  228. package/dist/cli/legacy/routes/scene-09.js.map +1 -0
  229. package/dist/cli/legacy/routes/scene-10.d.ts +10 -0
  230. package/dist/cli/legacy/routes/scene-10.d.ts.map +1 -0
  231. package/dist/cli/legacy/routes/scene-10.js +2 -0
  232. package/dist/cli/legacy/routes/scene-10.js.map +1 -0
  233. package/dist/cli/legacy/scene-01.d.ts +13 -0
  234. package/dist/cli/legacy/scene-01.d.ts.map +1 -0
  235. package/dist/cli/legacy/scene-01.js +2 -0
  236. package/dist/cli/legacy/scene-01.js.map +1 -0
  237. package/dist/cli/legacy/scene-02.d.ts +12 -0
  238. package/dist/cli/legacy/scene-02.d.ts.map +1 -0
  239. package/dist/cli/legacy/scene-02.js +2 -0
  240. package/dist/cli/legacy/scene-02.js.map +1 -0
  241. package/dist/cli/legacy/scene-03.d.ts +14 -0
  242. package/dist/cli/legacy/scene-03.d.ts.map +1 -0
  243. package/dist/cli/legacy/scene-03.js +2 -0
  244. package/dist/cli/legacy/scene-03.js.map +1 -0
  245. package/dist/cli/legacy/scene-04.d.ts +12 -0
  246. package/dist/cli/legacy/scene-04.d.ts.map +1 -0
  247. package/dist/cli/legacy/scene-04.js +2 -0
  248. package/dist/cli/legacy/scene-04.js.map +1 -0
  249. package/dist/cli/legacy/scene-05.d.ts +14 -0
  250. package/dist/cli/legacy/scene-05.d.ts.map +1 -0
  251. package/dist/cli/legacy/scene-05.js +2 -0
  252. package/dist/cli/legacy/scene-05.js.map +1 -0
  253. package/dist/cli/legacy/scene-06.d.ts +15 -0
  254. package/dist/cli/legacy/scene-06.d.ts.map +1 -0
  255. package/dist/cli/legacy/scene-06.js +2 -0
  256. package/dist/cli/legacy/scene-06.js.map +1 -0
  257. package/dist/cli/legacy/scene-07.d.ts +15 -0
  258. package/dist/cli/legacy/scene-07.d.ts.map +1 -0
  259. package/dist/cli/legacy/scene-07.js +2 -0
  260. package/dist/cli/legacy/scene-07.js.map +1 -0
  261. package/dist/cli/legacy/scene-08.d.ts +13 -0
  262. package/dist/cli/legacy/scene-08.d.ts.map +1 -0
  263. package/dist/cli/legacy/scene-08.js +2 -0
  264. package/dist/cli/legacy/scene-08.js.map +1 -0
  265. package/dist/cli/legacy/scene-09.d.ts +13 -0
  266. package/dist/cli/legacy/scene-09.d.ts.map +1 -0
  267. package/dist/cli/legacy/scene-09.js +2 -0
  268. package/dist/cli/legacy/scene-09.js.map +1 -0
  269. package/dist/cli/legacy/scene-10.d.ts +13 -0
  270. package/dist/cli/legacy/scene-10.d.ts.map +1 -0
  271. package/dist/cli/legacy/scene-10.js +2 -0
  272. package/dist/cli/legacy/scene-10.js.map +1 -0
  273. package/dist/cli/legacy/types.d.ts +16 -0
  274. package/dist/cli/legacy/types.d.ts.map +1 -0
  275. package/dist/cli/legacy/types.js +2 -0
  276. package/dist/cli/legacy/types.js.map +1 -0
  277. package/dist/cli/readArgs.d.ts +21 -0
  278. package/dist/cli/readArgs.d.ts.map +1 -0
  279. package/dist/cli/readArgs.js +72 -0
  280. package/dist/cli/readArgs.js.map +1 -0
  281. package/dist/cli/registry.d.ts +12 -0
  282. package/dist/cli/registry.d.ts.map +1 -0
  283. package/dist/cli/registry.js +38 -0
  284. package/dist/cli/registry.js.map +1 -0
  285. package/dist/cli/write.d.ts +15 -15
  286. package/dist/cli/write.d.ts.map +1 -1
  287. package/dist/cli/write.js +37 -945
  288. package/dist/cli/write.js.map +1 -1
  289. package/dist/diet/commands.d.ts +37 -0
  290. package/dist/diet/commands.d.ts.map +1 -0
  291. package/dist/diet/commands.js +44 -0
  292. package/dist/diet/commands.js.map +1 -0
  293. package/dist/diet/dietEngine.d.ts +79 -0
  294. package/dist/diet/dietEngine.d.ts.map +1 -0
  295. package/dist/diet/dietEngine.js +171 -0
  296. package/dist/diet/dietEngine.js.map +1 -0
  297. package/dist/diet/dietUi.d.ts +9 -0
  298. package/dist/diet/dietUi.d.ts.map +1 -0
  299. package/dist/diet/dietUi.js +45 -0
  300. package/dist/diet/dietUi.js.map +1 -0
  301. package/dist/diet/edit.d.ts +22 -0
  302. package/dist/diet/edit.d.ts.map +1 -0
  303. package/dist/diet/edit.js +96 -0
  304. package/dist/diet/edit.js.map +1 -0
  305. package/dist/diet/fieldLabels.d.ts +5 -0
  306. package/dist/diet/fieldLabels.d.ts.map +1 -0
  307. package/dist/diet/fieldLabels.js +44 -0
  308. package/dist/diet/fieldLabels.js.map +1 -0
  309. package/dist/diet/index.d.ts +26 -0
  310. package/dist/diet/index.d.ts.map +1 -0
  311. package/dist/diet/index.js +22 -0
  312. package/dist/diet/index.js.map +1 -0
  313. package/dist/diet/library.d.ts +20 -0
  314. package/dist/diet/library.d.ts.map +1 -0
  315. package/dist/diet/library.js +52 -0
  316. package/dist/diet/library.js.map +1 -0
  317. package/dist/diet/libraryDocs.d.ts +7 -0
  318. package/dist/diet/libraryDocs.d.ts.map +1 -0
  319. package/dist/diet/libraryDocs.js +361 -0
  320. package/dist/diet/libraryDocs.js.map +1 -0
  321. package/dist/diet/libraryPlate.d.ts +41 -0
  322. package/dist/diet/libraryPlate.d.ts.map +1 -0
  323. package/dist/diet/libraryPlate.js +57 -0
  324. package/dist/diet/libraryPlate.js.map +1 -0
  325. package/dist/diet/log.d.ts +18 -0
  326. package/dist/diet/log.d.ts.map +1 -0
  327. package/dist/diet/log.js +152 -0
  328. package/dist/diet/log.js.map +1 -0
  329. package/dist/diet/nutrition.d.ts +37 -0
  330. package/dist/diet/nutrition.d.ts.map +1 -0
  331. package/dist/diet/nutrition.js +135 -0
  332. package/dist/diet/nutrition.js.map +1 -0
  333. package/dist/diet/nutritionPort.d.ts +129 -0
  334. package/dist/diet/nutritionPort.d.ts.map +1 -0
  335. package/dist/diet/nutritionPort.js +246 -0
  336. package/dist/diet/nutritionPort.js.map +1 -0
  337. package/dist/diet/nutritionPortDocs.d.ts +106 -0
  338. package/dist/diet/nutritionPortDocs.d.ts.map +1 -0
  339. package/dist/diet/nutritionPortDocs.js +651 -0
  340. package/dist/diet/nutritionPortDocs.js.map +1 -0
  341. package/dist/diet/precheck.d.ts +7 -0
  342. package/dist/diet/precheck.d.ts.map +1 -0
  343. package/dist/diet/precheck.js +194 -0
  344. package/dist/diet/precheck.js.map +1 -0
  345. package/dist/diet/precheckLabel.d.ts +4 -0
  346. package/dist/diet/precheckLabel.d.ts.map +1 -0
  347. package/dist/diet/precheckLabel.js +191 -0
  348. package/dist/diet/precheckLabel.js.map +1 -0
  349. package/dist/diet/precheckParts.d.ts +49 -0
  350. package/dist/diet/precheckParts.d.ts.map +1 -0
  351. package/dist/diet/precheckParts.js +69 -0
  352. package/dist/diet/precheckParts.js.map +1 -0
  353. package/dist/diet/precheckPort.d.ts +82 -0
  354. package/dist/diet/precheckPort.d.ts.map +1 -0
  355. package/dist/diet/precheckPort.js +176 -0
  356. package/dist/diet/precheckPort.js.map +1 -0
  357. package/dist/diet/productImport.d.ts +28 -0
  358. package/dist/diet/productImport.d.ts.map +1 -0
  359. package/dist/diet/productImport.js +152 -0
  360. package/dist/diet/productImport.js.map +1 -0
  361. package/dist/diet/productStore.d.ts +62 -0
  362. package/dist/diet/productStore.d.ts.map +1 -0
  363. package/dist/diet/productStore.js +73 -0
  364. package/dist/diet/productStore.js.map +1 -0
  365. package/dist/diet/products.d.ts +15 -0
  366. package/dist/diet/products.d.ts.map +1 -0
  367. package/dist/diet/products.js +87 -0
  368. package/dist/diet/products.js.map +1 -0
  369. package/dist/diet/ranking.d.ts +18 -0
  370. package/dist/diet/ranking.d.ts.map +1 -0
  371. package/dist/diet/ranking.js +23 -0
  372. package/dist/diet/ranking.js.map +1 -0
  373. package/dist/diet/rankingDocs.d.ts +13 -0
  374. package/dist/diet/rankingDocs.d.ts.map +1 -0
  375. package/dist/diet/rankingDocs.js +341 -0
  376. package/dist/diet/rankingDocs.js.map +1 -0
  377. package/dist/diet/rankingPlate.d.ts +42 -0
  378. package/dist/diet/rankingPlate.d.ts.map +1 -0
  379. package/dist/diet/rankingPlate.js +96 -0
  380. package/dist/diet/rankingPlate.js.map +1 -0
  381. package/dist/diet/receipt.d.ts +34 -0
  382. package/dist/diet/receipt.d.ts.map +1 -0
  383. package/dist/diet/receipt.js +371 -0
  384. package/dist/diet/receipt.js.map +1 -0
  385. package/dist/diet/review.d.ts +36 -0
  386. package/dist/diet/review.d.ts.map +1 -0
  387. package/dist/diet/review.js +152 -0
  388. package/dist/diet/review.js.map +1 -0
  389. package/dist/diet/reviewDocs.d.ts +72 -0
  390. package/dist/diet/reviewDocs.d.ts.map +1 -0
  391. package/dist/diet/reviewDocs.js +312 -0
  392. package/dist/diet/reviewDocs.js.map +1 -0
  393. package/dist/diet/routes.d.ts +12 -0
  394. package/dist/diet/routes.d.ts.map +1 -0
  395. package/dist/diet/routes.js +108 -0
  396. package/dist/diet/routes.js.map +1 -0
  397. package/dist/diet/sourceStatsDocs.d.ts +3 -0
  398. package/dist/diet/sourceStatsDocs.d.ts.map +1 -0
  399. package/dist/diet/sourceStatsDocs.js +115 -0
  400. package/dist/diet/sourceStatsDocs.js.map +1 -0
  401. package/dist/diet/today.d.ts +14 -0
  402. package/dist/diet/today.d.ts.map +1 -0
  403. package/dist/diet/today.js +87 -0
  404. package/dist/diet/today.js.map +1 -0
  405. package/dist/diet/todayDocs.d.ts +53 -0
  406. package/dist/diet/todayDocs.d.ts.map +1 -0
  407. package/dist/diet/todayDocs.js +238 -0
  408. package/dist/diet/todayDocs.js.map +1 -0
  409. package/dist/exercise/cardio.d.ts +11 -0
  410. package/dist/exercise/cardio.d.ts.map +1 -0
  411. package/dist/exercise/cardio.js +14 -0
  412. package/dist/exercise/cardio.js.map +1 -0
  413. package/dist/exercise/categoryColors.d.ts +23 -0
  414. package/dist/exercise/categoryColors.d.ts.map +1 -0
  415. package/dist/exercise/categoryColors.js +28 -0
  416. package/dist/exercise/categoryColors.js.map +1 -0
  417. package/dist/exercise/commands.d.ts +20 -0
  418. package/dist/exercise/commands.d.ts.map +1 -0
  419. package/dist/exercise/commands.js +22 -0
  420. package/dist/exercise/commands.js.map +1 -0
  421. package/dist/exercise/distribution.d.ts +11 -0
  422. package/dist/exercise/distribution.d.ts.map +1 -0
  423. package/dist/exercise/distribution.js +14 -0
  424. package/dist/exercise/distribution.js.map +1 -0
  425. package/dist/exercise/edit.d.ts +22 -0
  426. package/dist/exercise/edit.d.ts.map +1 -0
  427. package/dist/exercise/edit.js +148 -0
  428. package/dist/exercise/edit.js.map +1 -0
  429. package/dist/exercise/exerciseStore.d.ts +87 -0
  430. package/dist/exercise/exerciseStore.d.ts.map +1 -0
  431. package/dist/exercise/exerciseStore.js +287 -0
  432. package/dist/exercise/exerciseStore.js.map +1 -0
  433. package/dist/exercise/fieldLabels.d.ts +5 -0
  434. package/dist/exercise/fieldLabels.d.ts.map +1 -0
  435. package/dist/exercise/fieldLabels.js +34 -0
  436. package/dist/exercise/fieldLabels.js.map +1 -0
  437. package/dist/exercise/goal.d.ts +16 -0
  438. package/dist/exercise/goal.d.ts.map +1 -0
  439. package/dist/exercise/goal.js +46 -0
  440. package/dist/exercise/goal.js.map +1 -0
  441. package/dist/exercise/index.d.ts +22 -0
  442. package/dist/exercise/index.d.ts.map +1 -0
  443. package/dist/exercise/index.js +22 -0
  444. package/dist/exercise/index.js.map +1 -0
  445. package/dist/exercise/log.d.ts +19 -0
  446. package/dist/exercise/log.d.ts.map +1 -0
  447. package/dist/exercise/log.js +102 -0
  448. package/dist/exercise/log.js.map +1 -0
  449. package/dist/exercise/precheck.d.ts +19 -0
  450. package/dist/exercise/precheck.d.ts.map +1 -0
  451. package/dist/exercise/precheck.js +127 -0
  452. package/dist/exercise/precheck.js.map +1 -0
  453. package/dist/exercise/recap.d.ts +11 -0
  454. package/dist/exercise/recap.d.ts.map +1 -0
  455. package/dist/exercise/recap.js +14 -0
  456. package/dist/exercise/recap.js.map +1 -0
  457. package/dist/exercise/receipt.d.ts +43 -0
  458. package/dist/exercise/receipt.d.ts.map +1 -0
  459. package/dist/exercise/receipt.js +401 -0
  460. package/dist/exercise/receipt.js.map +1 -0
  461. package/dist/exercise/records.d.ts +60 -0
  462. package/dist/exercise/records.d.ts.map +1 -0
  463. package/dist/exercise/records.js +317 -0
  464. package/dist/exercise/records.js.map +1 -0
  465. package/dist/exercise/routes.d.ts +21 -0
  466. package/dist/exercise/routes.d.ts.map +1 -0
  467. package/dist/exercise/routes.js +38 -0
  468. package/dist/exercise/routes.js.map +1 -0
  469. package/dist/exercise/sportUi.d.ts +77 -0
  470. package/dist/exercise/sportUi.d.ts.map +1 -0
  471. package/dist/exercise/sportUi.js +268 -0
  472. package/dist/exercise/sportUi.js.map +1 -0
  473. package/dist/exercise/strength.d.ts +11 -0
  474. package/dist/exercise/strength.d.ts.map +1 -0
  475. package/dist/exercise/strength.js +14 -0
  476. package/dist/exercise/strength.js.map +1 -0
  477. package/dist/exercise/trend.d.ts +11 -0
  478. package/dist/exercise/trend.d.ts.map +1 -0
  479. package/dist/exercise/trend.js +14 -0
  480. package/dist/exercise/trend.js.map +1 -0
  481. package/dist/fetch/audit.d.ts +2 -0
  482. package/dist/fetch/audit.d.ts.map +1 -1
  483. package/dist/fetch/audit.js +11 -10
  484. package/dist/fetch/audit.js.map +1 -1
  485. package/dist/fetch/batch.js +1 -1
  486. package/dist/fetch/batch.js.map +1 -1
  487. package/dist/fetch/body.d.ts +104 -1
  488. package/dist/fetch/body.d.ts.map +1 -1
  489. package/dist/fetch/body.js +195 -26
  490. package/dist/fetch/body.js.map +1 -1
  491. package/dist/fetch/cli.js +11 -5
  492. package/dist/fetch/cli.js.map +1 -1
  493. package/dist/fetch/index.d.ts +5 -7
  494. package/dist/fetch/index.d.ts.map +1 -1
  495. package/dist/fetch/index.js +7 -6
  496. package/dist/fetch/index.js.map +1 -1
  497. package/dist/fetch/profile.d.ts +24 -3
  498. package/dist/fetch/profile.d.ts.map +1 -1
  499. package/dist/fetch/profile.js +43 -14
  500. package/dist/fetch/profile.js.map +1 -1
  501. package/dist/fetch/xunji-catalog.d.ts +5 -0
  502. package/dist/fetch/xunji-catalog.d.ts.map +1 -1
  503. package/dist/fetch/xunji-catalog.js +22 -1
  504. package/dist/fetch/xunji-catalog.js.map +1 -1
  505. package/dist/goal/commands.d.ts +31 -0
  506. package/dist/goal/commands.d.ts.map +1 -0
  507. package/dist/goal/commands.js +20 -0
  508. package/dist/goal/commands.js.map +1 -0
  509. package/dist/goal/goalExtraPlate.d.ts +45 -0
  510. package/dist/goal/goalExtraPlate.d.ts.map +1 -0
  511. package/dist/goal/goalExtraPlate.js +95 -0
  512. package/dist/goal/goalExtraPlate.js.map +1 -0
  513. package/dist/goal/goalHistory.d.ts +24 -0
  514. package/dist/goal/goalHistory.d.ts.map +1 -0
  515. package/dist/goal/goalHistory.js +51 -0
  516. package/dist/goal/goalHistory.js.map +1 -0
  517. package/dist/goal/goalPlate.d.ts +24 -0
  518. package/dist/goal/goalPlate.d.ts.map +1 -0
  519. package/dist/goal/goalPlate.js +34 -0
  520. package/dist/goal/goalPlate.js.map +1 -0
  521. package/dist/goal/goalPlates.d.ts +66 -0
  522. package/dist/goal/goalPlates.d.ts.map +1 -0
  523. package/dist/goal/goalPlates.js +114 -0
  524. package/dist/goal/goalPlates.js.map +1 -0
  525. package/dist/goal/goalRecommendDoc.d.ts +6 -0
  526. package/dist/goal/goalRecommendDoc.d.ts.map +1 -0
  527. package/dist/goal/goalRecommendDoc.js +107 -0
  528. package/dist/goal/goalRecommendDoc.js.map +1 -0
  529. package/dist/goal/goalStore.d.ts +56 -0
  530. package/dist/goal/goalStore.d.ts.map +1 -0
  531. package/dist/goal/goalStore.js +111 -0
  532. package/dist/goal/goalStore.js.map +1 -0
  533. package/dist/goal/goalWeightDoc.d.ts +7 -0
  534. package/dist/goal/goalWeightDoc.d.ts.map +1 -0
  535. package/dist/goal/goalWeightDoc.js +107 -0
  536. package/dist/goal/goalWeightDoc.js.map +1 -0
  537. package/dist/goal/index.d.ts +17 -0
  538. package/dist/goal/index.d.ts.map +1 -0
  539. package/dist/goal/index.js +21 -0
  540. package/dist/goal/index.js.map +1 -0
  541. package/dist/goal/nutritionGoal.d.ts +115 -0
  542. package/dist/goal/nutritionGoal.d.ts.map +1 -0
  543. package/dist/goal/nutritionGoal.js +165 -0
  544. package/dist/goal/nutritionGoal.js.map +1 -0
  545. package/dist/goal/precheck.d.ts +14 -0
  546. package/dist/goal/precheck.d.ts.map +1 -0
  547. package/dist/goal/precheck.js +213 -0
  548. package/dist/goal/precheck.js.map +1 -0
  549. package/dist/goal/read.d.ts +53 -0
  550. package/dist/goal/read.d.ts.map +1 -0
  551. package/dist/goal/read.js +154 -0
  552. package/dist/goal/read.js.map +1 -0
  553. package/dist/goal/receipt.d.ts +38 -0
  554. package/dist/goal/receipt.d.ts.map +1 -0
  555. package/dist/goal/receipt.js +290 -0
  556. package/dist/goal/receipt.js.map +1 -0
  557. package/dist/goal/resultDocs.d.ts +23 -0
  558. package/dist/goal/resultDocs.d.ts.map +1 -0
  559. package/dist/goal/resultDocs.js +279 -0
  560. package/dist/goal/resultDocs.js.map +1 -0
  561. package/dist/goal/routes.d.ts +12 -0
  562. package/dist/goal/routes.d.ts.map +1 -0
  563. package/dist/goal/routes.js +29 -0
  564. package/dist/goal/routes.js.map +1 -0
  565. package/dist/goal/set.d.ts +97 -0
  566. package/dist/goal/set.d.ts.map +1 -0
  567. package/dist/goal/set.js +103 -0
  568. package/dist/goal/set.js.map +1 -0
  569. package/dist/goal/write.d.ts +30 -0
  570. package/dist/goal/write.d.ts.map +1 -0
  571. package/dist/goal/write.js +102 -0
  572. package/dist/goal/write.js.map +1 -0
  573. package/dist/help-missing.json +35 -0
  574. package/dist/home/commands.d.ts +11 -0
  575. package/dist/home/commands.d.ts.map +1 -0
  576. package/dist/home/commands.js +8 -0
  577. package/dist/home/commands.js.map +1 -0
  578. package/dist/home/exercise.d.ts +27 -0
  579. package/dist/home/exercise.d.ts.map +1 -0
  580. package/dist/home/exercise.js +60 -0
  581. package/dist/home/exercise.js.map +1 -0
  582. package/dist/home/goalProgressDocs.d.ts +27 -0
  583. package/dist/home/goalProgressDocs.d.ts.map +1 -0
  584. package/dist/home/goalProgressDocs.js +363 -0
  585. package/dist/home/goalProgressDocs.js.map +1 -0
  586. package/dist/home/home.d.ts +38 -0
  587. package/dist/home/home.d.ts.map +1 -0
  588. package/dist/home/home.js +78 -0
  589. package/dist/home/home.js.map +1 -0
  590. package/dist/home/homeDocs.d.ts +8 -0
  591. package/dist/home/homeDocs.d.ts.map +1 -0
  592. package/dist/home/homeDocs.js +307 -0
  593. package/dist/home/homeDocs.js.map +1 -0
  594. package/dist/home/homeViewParts.d.ts +42 -0
  595. package/dist/home/homeViewParts.d.ts.map +1 -0
  596. package/dist/home/homeViewParts.js +316 -0
  597. package/dist/home/homeViewParts.js.map +1 -0
  598. package/dist/home/index.d.ts +14 -0
  599. package/dist/home/index.d.ts.map +1 -0
  600. package/dist/home/index.js +13 -0
  601. package/dist/home/index.js.map +1 -0
  602. package/dist/home/routes.d.ts +10 -0
  603. package/dist/home/routes.d.ts.map +1 -0
  604. package/dist/home/routes.js +47 -0
  605. package/dist/home/routes.js.map +1 -0
  606. package/dist/home/today.d.ts +50 -0
  607. package/dist/home/today.d.ts.map +1 -0
  608. package/dist/home/today.js +255 -0
  609. package/dist/home/today.js.map +1 -0
  610. package/dist/index.d.ts +2 -0
  611. package/dist/index.d.ts.map +1 -1
  612. package/dist/index.js +3 -0
  613. package/dist/index.js.map +1 -1
  614. package/dist/migrate/migrate.js +1 -1
  615. package/dist/output.d.ts +19 -9
  616. package/dist/output.d.ts.map +1 -1
  617. package/dist/output.js +58 -125
  618. package/dist/output.js.map +1 -1
  619. package/dist/photo/commands.d.ts +55 -0
  620. package/dist/photo/commands.d.ts.map +1 -0
  621. package/dist/photo/commands.js +25 -0
  622. package/dist/photo/commands.js.map +1 -0
  623. package/dist/photo/compare.d.ts +24 -0
  624. package/dist/photo/compare.d.ts.map +1 -0
  625. package/dist/photo/compare.js +48 -0
  626. package/dist/photo/compare.js.map +1 -0
  627. package/dist/photo/compareDoc.d.ts +5 -0
  628. package/dist/photo/compareDoc.d.ts.map +1 -0
  629. package/dist/photo/compareDoc.js +221 -0
  630. package/dist/photo/compareDoc.js.map +1 -0
  631. package/dist/photo/dir.d.ts +5 -0
  632. package/dist/photo/dir.d.ts.map +1 -0
  633. package/dist/photo/dir.js +22 -0
  634. package/dist/photo/dir.js.map +1 -0
  635. package/dist/photo/gallery.d.ts +16 -0
  636. package/dist/photo/gallery.d.ts.map +1 -0
  637. package/dist/photo/gallery.js +45 -0
  638. package/dist/photo/gallery.js.map +1 -0
  639. package/dist/photo/galleryDoc.d.ts +12 -0
  640. package/dist/photo/galleryDoc.d.ts.map +1 -0
  641. package/dist/photo/galleryDoc.js +291 -0
  642. package/dist/photo/galleryDoc.js.map +1 -0
  643. package/dist/photo/gif.d.ts +28 -0
  644. package/dist/photo/gif.d.ts.map +1 -0
  645. package/dist/photo/gif.js +281 -0
  646. package/dist/photo/gif.js.map +1 -0
  647. package/dist/photo/gifDoc.d.ts +52 -0
  648. package/dist/photo/gifDoc.d.ts.map +1 -0
  649. package/dist/photo/gifDoc.js +311 -0
  650. package/dist/photo/gifDoc.js.map +1 -0
  651. package/dist/photo/help.d.ts +4 -0
  652. package/dist/photo/help.d.ts.map +1 -0
  653. package/dist/photo/help.js +87 -0
  654. package/dist/photo/help.js.map +1 -0
  655. package/dist/photo/helpCenter.d.ts +137 -0
  656. package/dist/photo/helpCenter.d.ts.map +1 -0
  657. package/dist/photo/helpCenter.js +475 -0
  658. package/dist/photo/helpCenter.js.map +1 -0
  659. package/dist/photo/helpDoc.d.ts +5 -0
  660. package/dist/photo/helpDoc.d.ts.map +1 -0
  661. package/dist/photo/helpDoc.js +205 -0
  662. package/dist/photo/helpDoc.js.map +1 -0
  663. package/dist/photo/helpDocContent.d.ts +77 -0
  664. package/dist/photo/helpDocContent.d.ts.map +1 -0
  665. package/dist/photo/helpDocContent.js +120 -0
  666. package/dist/photo/helpDocContent.js.map +1 -0
  667. package/dist/photo/helpDocCss.d.ts +5 -0
  668. package/dist/photo/helpDocCss.d.ts.map +1 -0
  669. package/dist/photo/helpDocCss.js +119 -0
  670. package/dist/photo/helpDocCss.js.map +1 -0
  671. package/dist/photo/helpFile.d.ts +26 -0
  672. package/dist/photo/helpFile.d.ts.map +1 -0
  673. package/dist/photo/helpFile.js +90 -0
  674. package/dist/photo/helpFile.js.map +1 -0
  675. package/dist/photo/helpLookup.d.ts +18 -0
  676. package/dist/photo/helpLookup.d.ts.map +1 -0
  677. package/dist/photo/helpLookup.js +58 -0
  678. package/dist/photo/helpLookup.js.map +1 -0
  679. package/dist/photo/helpPaths.d.ts +22 -0
  680. package/dist/photo/helpPaths.d.ts.map +1 -0
  681. package/dist/photo/helpPaths.js +22 -0
  682. package/dist/photo/helpPaths.js.map +1 -0
  683. package/dist/photo/index.d.ts +17 -0
  684. package/dist/photo/index.d.ts.map +1 -0
  685. package/dist/photo/index.js +21 -0
  686. package/dist/photo/index.js.map +1 -0
  687. package/dist/photo/manage.d.ts +13 -0
  688. package/dist/photo/manage.d.ts.map +1 -0
  689. package/dist/photo/manage.js +64 -0
  690. package/dist/photo/manage.js.map +1 -0
  691. package/dist/photo/photo.d.ts +118 -0
  692. package/dist/photo/photo.d.ts.map +1 -0
  693. package/dist/photo/photo.js +279 -0
  694. package/dist/photo/photo.js.map +1 -0
  695. package/dist/photo/photoThumb.d.ts +38 -0
  696. package/dist/photo/photoThumb.d.ts.map +1 -0
  697. package/dist/photo/photoThumb.js +83 -0
  698. package/dist/photo/photoThumb.js.map +1 -0
  699. package/dist/photo/photoUi.d.ts +39 -0
  700. package/dist/photo/photoUi.d.ts.map +1 -0
  701. package/dist/photo/photoUi.js +233 -0
  702. package/dist/photo/photoUi.js.map +1 -0
  703. package/dist/photo/photos.d.ts +76 -0
  704. package/dist/photo/photos.d.ts.map +1 -0
  705. package/dist/photo/photos.js +193 -0
  706. package/dist/photo/photos.js.map +1 -0
  707. package/dist/photo/picker.d.ts +41 -0
  708. package/dist/photo/picker.d.ts.map +1 -0
  709. package/dist/photo/picker.js +132 -0
  710. package/dist/photo/picker.js.map +1 -0
  711. package/dist/photo/pickerDoc.d.ts +12 -0
  712. package/dist/photo/pickerDoc.d.ts.map +1 -0
  713. package/dist/photo/pickerDoc.js +231 -0
  714. package/dist/photo/pickerDoc.js.map +1 -0
  715. package/dist/photo/receipt.d.ts +23 -0
  716. package/dist/photo/receipt.d.ts.map +1 -0
  717. package/dist/photo/receipt.js +331 -0
  718. package/dist/photo/receipt.js.map +1 -0
  719. package/dist/photo/receiptUi.d.ts +42 -0
  720. package/dist/photo/receiptUi.d.ts.map +1 -0
  721. package/dist/photo/receiptUi.js +147 -0
  722. package/dist/photo/receiptUi.js.map +1 -0
  723. package/dist/photo/routes.d.ts +10 -0
  724. package/dist/photo/routes.d.ts.map +1 -0
  725. package/dist/photo/routes.js +29 -0
  726. package/dist/photo/routes.js.map +1 -0
  727. package/dist/photo/store.d.ts +10 -0
  728. package/dist/photo/store.d.ts.map +1 -0
  729. package/dist/photo/store.js +44 -0
  730. package/dist/photo/store.js.map +1 -0
  731. package/dist/photo/viewerDoc.d.ts +5 -0
  732. package/dist/photo/viewerDoc.d.ts.map +1 -0
  733. package/dist/photo/viewerDoc.js +255 -0
  734. package/dist/photo/viewerDoc.js.map +1 -0
  735. package/dist/photo/wizard.d.ts +15 -0
  736. package/dist/photo/wizard.d.ts.map +1 -0
  737. package/dist/photo/wizard.js +25 -0
  738. package/dist/photo/wizard.js.map +1 -0
  739. package/dist/photo/wizardUi.d.ts +24 -0
  740. package/dist/photo/wizardUi.d.ts.map +1 -0
  741. package/dist/photo/wizardUi.js +101 -0
  742. package/dist/photo/wizardUi.js.map +1 -0
  743. package/dist/profile/commands.d.ts +28 -0
  744. package/dist/profile/commands.d.ts.map +1 -0
  745. package/dist/profile/commands.js +10 -0
  746. package/dist/profile/commands.js.map +1 -0
  747. package/dist/profile/index.d.ts +23 -0
  748. package/dist/profile/index.d.ts.map +1 -0
  749. package/dist/profile/index.js +22 -0
  750. package/dist/profile/index.js.map +1 -0
  751. package/dist/profile/labels.d.ts +10 -0
  752. package/dist/profile/labels.d.ts.map +1 -0
  753. package/dist/profile/labels.js +52 -0
  754. package/dist/profile/labels.js.map +1 -0
  755. package/dist/profile/read.d.ts +13 -0
  756. package/dist/profile/read.d.ts.map +1 -0
  757. package/dist/profile/read.js +24 -0
  758. package/dist/profile/read.js.map +1 -0
  759. package/dist/profile/receipt.d.ts +10 -0
  760. package/dist/profile/receipt.d.ts.map +1 -0
  761. package/dist/profile/receipt.js +19 -0
  762. package/dist/profile/receipt.js.map +1 -0
  763. package/dist/profile/routes.d.ts +8 -0
  764. package/dist/profile/routes.d.ts.map +1 -0
  765. package/dist/profile/routes.js +9 -0
  766. package/dist/profile/routes.js.map +1 -0
  767. package/dist/profile/setup.d.ts +25 -6
  768. package/dist/profile/setup.d.ts.map +1 -1
  769. package/dist/profile/setup.js +184 -78
  770. package/dist/profile/setup.js.map +1 -1
  771. package/dist/profile/update.d.ts +1 -1
  772. package/dist/profile/update.d.ts.map +1 -1
  773. package/dist/profile/update.js +33 -13
  774. package/dist/profile/update.js.map +1 -1
  775. package/dist/profile/view.d.ts +35 -4
  776. package/dist/profile/view.d.ts.map +1 -1
  777. package/dist/profile/view.js +132 -22
  778. package/dist/profile/view.js.map +1 -1
  779. package/dist/profile/write.d.ts +16 -0
  780. package/dist/profile/write.d.ts.map +1 -0
  781. package/dist/profile/write.js +75 -0
  782. package/dist/profile/write.js.map +1 -0
  783. package/dist/render/analysisPlate.d.ts +1 -1
  784. package/dist/render/analysisPlate.d.ts.map +1 -1
  785. package/dist/render/analysisPlate.js +1 -1
  786. package/dist/render/analysisPlate.js.map +1 -1
  787. package/dist/render/dietDocs.d.ts +19 -19
  788. package/dist/render/dietDocs.d.ts.map +1 -1
  789. package/dist/render/dietDocs.js +158 -457
  790. package/dist/render/dietDocs.js.map +1 -1
  791. package/dist/render/exercisePort.d.ts +3 -1
  792. package/dist/render/exercisePort.d.ts.map +1 -1
  793. package/dist/render/exercisePort.js +4 -3
  794. package/dist/render/exercisePort.js.map +1 -1
  795. package/dist/render/goalExtra.d.ts.map +1 -1
  796. package/dist/render/goalExtra.js +2 -1
  797. package/dist/render/goalExtra.js.map +1 -1
  798. package/dist/render/goalPlate.d.ts +2 -2
  799. package/dist/render/goalPlate.d.ts.map +1 -1
  800. package/dist/render/goalPlate.js +3 -3
  801. package/dist/render/goalPlate.js.map +1 -1
  802. package/dist/render/helpShell.d.ts +1 -1
  803. package/dist/render/helpShell.d.ts.map +1 -1
  804. package/dist/render/html.d.ts +36 -20
  805. package/dist/render/html.d.ts.map +1 -1
  806. package/dist/render/html.js +37 -45
  807. package/dist/render/html.js.map +1 -1
  808. package/dist/render/index.d.ts +35 -31
  809. package/dist/render/index.d.ts.map +1 -1
  810. package/dist/render/index.js +29 -17
  811. package/dist/render/index.js.map +1 -1
  812. package/dist/render/insightPlate.d.ts +17 -0
  813. package/dist/render/insightPlate.d.ts.map +1 -1
  814. package/dist/render/insightPlate.js +109 -1
  815. package/dist/render/insightPlate.js.map +1 -1
  816. package/dist/render/pageChromeCss.d.ts +24 -0
  817. package/dist/render/pageChromeCss.d.ts.map +1 -0
  818. package/dist/render/pageChromeCss.js +45 -0
  819. package/dist/render/pageChromeCss.js.map +1 -0
  820. package/dist/render/planCopyBlock.d.ts +32 -0
  821. package/dist/render/planCopyBlock.d.ts.map +1 -0
  822. package/dist/render/planCopyBlock.js +34 -0
  823. package/dist/render/planCopyBlock.js.map +1 -0
  824. package/dist/render/planEditor.d.ts +94 -0
  825. package/dist/render/planEditor.d.ts.map +1 -0
  826. package/dist/render/planEditor.js +38 -0
  827. package/dist/render/planEditor.js.map +1 -0
  828. package/dist/render/planEditorCss.d.ts +13 -0
  829. package/dist/render/planEditorCss.d.ts.map +1 -0
  830. package/dist/render/planEditorCss.js +140 -0
  831. package/dist/render/planEditorCss.js.map +1 -0
  832. package/dist/render/planEditorDocs.d.ts +7 -0
  833. package/dist/render/planEditorDocs.d.ts.map +1 -0
  834. package/dist/render/planEditorDocs.js +56 -0
  835. package/dist/render/planEditorDocs.js.map +1 -0
  836. package/dist/render/planEditorPort.d.ts +45 -0
  837. package/dist/render/planEditorPort.d.ts.map +1 -0
  838. package/dist/render/planEditorPort.js +217 -0
  839. package/dist/render/planEditorPort.js.map +1 -0
  840. package/dist/render/planEditorRuntime.d.ts +15 -0
  841. package/dist/render/planEditorRuntime.d.ts.map +1 -0
  842. package/dist/render/planEditorRuntime.js +427 -0
  843. package/dist/render/planEditorRuntime.js.map +1 -0
  844. package/dist/render/planPlate.d.ts +84 -4
  845. package/dist/render/planPlate.d.ts.map +1 -1
  846. package/dist/render/planPlate.js +155 -7
  847. package/dist/render/planPlate.js.map +1 -1
  848. package/dist/render/planWizardCss.d.ts +21 -0
  849. package/dist/render/planWizardCss.d.ts.map +1 -0
  850. package/dist/render/planWizardCss.js +121 -0
  851. package/dist/render/planWizardCss.js.map +1 -0
  852. package/dist/render/planWizardDocs.d.ts +8 -0
  853. package/dist/render/planWizardDocs.d.ts.map +1 -0
  854. package/dist/render/planWizardDocs.js +151 -0
  855. package/dist/render/planWizardDocs.js.map +1 -0
  856. package/dist/render/receipt.d.ts +1 -1
  857. package/dist/render/receipt.d.ts.map +1 -1
  858. package/dist/render/receipt.js +1 -1
  859. package/dist/render/receipt.js.map +1 -1
  860. package/dist/render/reviewDocs.d.ts +3 -0
  861. package/dist/render/reviewDocs.d.ts.map +1 -0
  862. package/dist/render/reviewDocs.js +222 -0
  863. package/dist/render/reviewDocs.js.map +1 -0
  864. package/dist/render/reviewDocsCss.d.ts +5 -0
  865. package/dist/render/reviewDocsCss.d.ts.map +1 -0
  866. package/dist/render/reviewDocsCss.js +128 -0
  867. package/dist/render/reviewDocsCss.js.map +1 -0
  868. package/dist/render/sportDocs.d.ts +17 -12
  869. package/dist/render/sportDocs.d.ts.map +1 -1
  870. package/dist/render/sportDocs.js +370 -525
  871. package/dist/render/sportDocs.js.map +1 -1
  872. package/dist/render/sportPortDocs.d.ts +3 -2
  873. package/dist/render/sportPortDocs.d.ts.map +1 -1
  874. package/dist/render/sportPortDocs.js +810 -389
  875. package/dist/render/sportPortDocs.js.map +1 -1
  876. package/dist/render/trendDocs.d.ts +16 -6
  877. package/dist/render/trendDocs.d.ts.map +1 -1
  878. package/dist/render/trendDocs.js +293 -252
  879. package/dist/render/trendDocs.js.map +1 -1
  880. package/dist/render/trendMiscPort.d.ts +9 -24
  881. package/dist/render/trendMiscPort.d.ts.map +1 -1
  882. package/dist/render/trendMiscPort.js +7 -30
  883. package/dist/render/trendMiscPort.js.map +1 -1
  884. package/dist/render/trendMiscPortDocs.d.ts +1 -2
  885. package/dist/render/trendMiscPortDocs.d.ts.map +1 -1
  886. package/dist/render/trendMiscPortDocs.js +256 -107
  887. package/dist/render/trendMiscPortDocs.js.map +1 -1
  888. package/dist/render/trendPredictDocs.d.ts +16 -0
  889. package/dist/render/trendPredictDocs.d.ts.map +1 -0
  890. package/dist/render/trendPredictDocs.js +1131 -0
  891. package/dist/render/trendPredictDocs.js.map +1 -0
  892. package/dist/render/wizardPort.d.ts +9 -62
  893. package/dist/render/wizardPort.d.ts.map +1 -1
  894. package/dist/render/wizardPort.js +20 -180
  895. package/dist/render/wizardPort.js.map +1 -1
  896. package/dist/render/wizardPortDocs.d.ts +5 -5
  897. package/dist/render/wizardPortDocs.d.ts.map +1 -1
  898. package/dist/render/wizardPortDocs.js +273 -215
  899. package/dist/render/wizardPortDocs.js.map +1 -1
  900. package/dist/render/workoutMovementTable.d.ts +10 -0
  901. package/dist/render/workoutMovementTable.d.ts.map +1 -0
  902. package/dist/render/workoutMovementTable.js +153 -0
  903. package/dist/render/workoutMovementTable.js.map +1 -0
  904. package/dist/render/workoutPlanCss.d.ts +15 -0
  905. package/dist/render/workoutPlanCss.d.ts.map +1 -0
  906. package/dist/render/workoutPlanCss.js +217 -0
  907. package/dist/render/workoutPlanCss.js.map +1 -0
  908. package/dist/render/workoutPlanDocs.d.ts +23 -0
  909. package/dist/render/workoutPlanDocs.d.ts.map +1 -0
  910. package/dist/render/workoutPlanDocs.js +244 -0
  911. package/dist/render/workoutPlanDocs.js.map +1 -0
  912. package/dist/render/workoutPlanLook.d.ts +16 -0
  913. package/dist/render/workoutPlanLook.d.ts.map +1 -0
  914. package/dist/render/workoutPlanLook.js +135 -0
  915. package/dist/render/workoutPlanLook.js.map +1 -0
  916. package/dist/shared/commandSpec.d.ts +73 -0
  917. package/dist/shared/commandSpec.d.ts.map +1 -0
  918. package/dist/shared/commandSpec.js +2 -0
  919. package/dist/shared/commandSpec.js.map +1 -0
  920. package/dist/shared/conclusionLine.d.ts +3 -0
  921. package/dist/shared/conclusionLine.d.ts.map +1 -0
  922. package/dist/shared/conclusionLine.js +21 -0
  923. package/dist/shared/conclusionLine.js.map +1 -0
  924. package/dist/shared/contentSuffix.d.ts +17 -0
  925. package/dist/shared/contentSuffix.d.ts.map +1 -0
  926. package/dist/shared/contentSuffix.js +125 -0
  927. package/dist/shared/contentSuffix.js.map +1 -0
  928. package/dist/shared/copyArea.d.ts +30 -11
  929. package/dist/shared/copyArea.d.ts.map +1 -1
  930. package/dist/shared/copyArea.js +68 -13
  931. package/dist/shared/copyArea.js.map +1 -1
  932. package/dist/shared/docPage.d.ts +26 -4
  933. package/dist/shared/docPage.d.ts.map +1 -1
  934. package/dist/shared/docPage.js +83 -9
  935. package/dist/shared/docPage.js.map +1 -1
  936. package/dist/shared/emptyGuide.d.ts +9 -0
  937. package/dist/shared/emptyGuide.d.ts.map +1 -0
  938. package/dist/shared/emptyGuide.js +31 -0
  939. package/dist/shared/emptyGuide.js.map +1 -0
  940. package/dist/shared/fieldLabel.d.ts +5 -0
  941. package/dist/shared/fieldLabel.d.ts.map +1 -0
  942. package/dist/shared/fieldLabel.js +42 -0
  943. package/dist/shared/fieldLabel.js.map +1 -0
  944. package/dist/shared/operationHead.d.ts +21 -0
  945. package/dist/shared/operationHead.d.ts.map +1 -0
  946. package/dist/shared/operationHead.js +73 -0
  947. package/dist/shared/operationHead.js.map +1 -0
  948. package/dist/shared/pageKit.d.ts +25 -0
  949. package/dist/shared/pageKit.d.ts.map +1 -0
  950. package/dist/shared/pageKit.js +56 -0
  951. package/dist/shared/pageKit.js.map +1 -0
  952. package/dist/shared/params.d.ts +54 -0
  953. package/dist/shared/params.d.ts.map +1 -0
  954. package/dist/shared/params.js +176 -0
  955. package/dist/shared/params.js.map +1 -0
  956. package/dist/shared/receiptParts.d.ts +9 -0
  957. package/dist/shared/receiptParts.d.ts.map +1 -0
  958. package/dist/shared/receiptParts.js +40 -0
  959. package/dist/shared/receiptParts.js.map +1 -0
  960. package/dist/shared/sceneEnvelope.d.ts +32 -0
  961. package/dist/shared/sceneEnvelope.d.ts.map +1 -0
  962. package/dist/shared/sceneEnvelope.js +12 -0
  963. package/dist/shared/sceneEnvelope.js.map +1 -0
  964. package/dist/shared/sourceLine.d.ts +10 -0
  965. package/dist/shared/sourceLine.d.ts.map +1 -0
  966. package/dist/shared/sourceLine.js +37 -0
  967. package/dist/shared/sourceLine.js.map +1 -0
  968. package/dist/shared/writeParts.d.ts +61 -0
  969. package/dist/shared/writeParts.d.ts.map +1 -0
  970. package/dist/shared/writeParts.js +79 -0
  971. package/dist/shared/writeParts.js.map +1 -0
  972. package/dist/triggers/help-lookup.d.ts +41 -5
  973. package/dist/triggers/help-lookup.d.ts.map +1 -1
  974. package/dist/triggers/help-lookup.js +100 -51
  975. package/dist/triggers/help-lookup.js.map +1 -1
  976. package/dist/triggers/index.js +1 -1
  977. package/dist/triggers/routeSpec.d.ts +66 -0
  978. package/dist/triggers/routeSpec.d.ts.map +1 -0
  979. package/dist/triggers/routeSpec.js +21 -0
  980. package/dist/triggers/routeSpec.js.map +1 -0
  981. package/dist/triggers/routes.generated.d.ts +17 -0
  982. package/dist/triggers/routes.generated.d.ts.map +1 -0
  983. package/dist/triggers/routes.generated.js +519 -0
  984. package/dist/triggers/routes.generated.js.map +1 -0
  985. package/dist/triggers/routing.d.ts +11 -34
  986. package/dist/triggers/routing.d.ts.map +1 -1
  987. package/dist/triggers/routing.js +12 -528
  988. package/dist/triggers/routing.js.map +1 -1
  989. package/dist/triggers/scene-01-home.js +9 -9
  990. package/dist/triggers/scene-01-home.js.map +1 -1
  991. package/dist/triggers/scene-02-diet.js +62 -62
  992. package/dist/triggers/scene-02-diet.js.map +1 -1
  993. package/dist/triggers/scene-03-weight.js +54 -54
  994. package/dist/triggers/scene-03-weight.js.map +1 -1
  995. package/dist/triggers/scene-04-exercise.js +33 -33
  996. package/dist/triggers/scene-04-exercise.js.map +1 -1
  997. package/dist/triggers/scene-05-workout.js +32 -32
  998. package/dist/triggers/scene-05-workout.js.map +1 -1
  999. package/dist/triggers/scene-06-goal.d.ts +1 -1
  1000. package/dist/triggers/scene-06-goal.d.ts.map +1 -1
  1001. package/dist/triggers/scene-06-goal.js +25 -24
  1002. package/dist/triggers/scene-06-goal.js.map +1 -1
  1003. package/dist/triggers/scene-07-profile.js +1 -1
  1004. package/dist/triggers/scene-07-profile.js.map +1 -1
  1005. package/dist/triggers/scene-08-body.js +10 -10
  1006. package/dist/triggers/scene-08-body.js.map +1 -1
  1007. package/dist/triggers/scene-09-photo.js +10 -10
  1008. package/dist/triggers/scene-09-photo.js.map +1 -1
  1009. package/dist/triggers/scene-10-analysis.js +176 -176
  1010. package/dist/triggers/scene-10-analysis.js.map +1 -1
  1011. package/dist/triggers/wake-assets.d.ts.map +1 -1
  1012. package/dist/triggers/wake-assets.js +21 -11
  1013. package/dist/triggers/wake-assets.js.map +1 -1
  1014. package/dist/weight/commands.d.ts +21 -0
  1015. package/dist/weight/commands.d.ts.map +1 -0
  1016. package/dist/weight/commands.js +18 -0
  1017. package/dist/weight/commands.js.map +1 -0
  1018. package/dist/weight/compare.d.ts +60 -0
  1019. package/dist/weight/compare.d.ts.map +1 -0
  1020. package/dist/weight/compare.js +570 -0
  1021. package/dist/weight/compare.js.map +1 -0
  1022. package/dist/weight/edit.d.ts +13 -0
  1023. package/dist/weight/edit.d.ts.map +1 -0
  1024. package/dist/weight/edit.js +87 -0
  1025. package/dist/weight/edit.js.map +1 -0
  1026. package/dist/weight/fieldLabels.d.ts +5 -0
  1027. package/dist/weight/fieldLabels.d.ts.map +1 -0
  1028. package/dist/weight/fieldLabels.js +23 -0
  1029. package/dist/weight/fieldLabels.js.map +1 -0
  1030. package/dist/weight/figures.d.ts +87 -0
  1031. package/dist/weight/figures.d.ts.map +1 -0
  1032. package/dist/weight/figures.js +219 -0
  1033. package/dist/weight/figures.js.map +1 -0
  1034. package/dist/weight/history.d.ts +85 -0
  1035. package/dist/weight/history.d.ts.map +1 -0
  1036. package/dist/weight/history.js +771 -0
  1037. package/dist/weight/history.js.map +1 -0
  1038. package/dist/weight/index.d.ts +27 -0
  1039. package/dist/weight/index.d.ts.map +1 -0
  1040. package/dist/weight/index.js +23 -0
  1041. package/dist/weight/index.js.map +1 -0
  1042. package/dist/weight/log.d.ts +40 -0
  1043. package/dist/weight/log.d.ts.map +1 -0
  1044. package/dist/weight/log.js +355 -0
  1045. package/dist/weight/log.js.map +1 -0
  1046. package/dist/weight/logReceipt.d.ts +28 -0
  1047. package/dist/weight/logReceipt.d.ts.map +1 -0
  1048. package/dist/weight/logReceipt.js +259 -0
  1049. package/dist/weight/logReceipt.js.map +1 -0
  1050. package/dist/weight/plate.d.ts +77 -0
  1051. package/dist/weight/plate.d.ts.map +1 -0
  1052. package/dist/weight/plate.js +60 -0
  1053. package/dist/weight/plate.js.map +1 -0
  1054. package/dist/weight/plateDocs.d.ts +83 -0
  1055. package/dist/weight/plateDocs.d.ts.map +1 -0
  1056. package/dist/weight/plateDocs.js +179 -0
  1057. package/dist/weight/plateDocs.js.map +1 -0
  1058. package/dist/weight/receipt.d.ts +23 -0
  1059. package/dist/weight/receipt.d.ts.map +1 -0
  1060. package/dist/weight/receipt.js +178 -0
  1061. package/dist/weight/receipt.js.map +1 -0
  1062. package/dist/weight/records.d.ts +109 -0
  1063. package/dist/weight/records.d.ts.map +1 -0
  1064. package/dist/weight/records.js +210 -0
  1065. package/dist/weight/records.js.map +1 -0
  1066. package/dist/weight/review.d.ts +114 -0
  1067. package/dist/weight/review.d.ts.map +1 -0
  1068. package/dist/weight/review.js +651 -0
  1069. package/dist/weight/review.js.map +1 -0
  1070. package/dist/weight/routes.d.ts +7 -0
  1071. package/dist/weight/routes.d.ts.map +1 -0
  1072. package/dist/weight/routes.js +68 -0
  1073. package/dist/weight/routes.js.map +1 -0
  1074. package/dist/weight/volatility.d.ts +78 -0
  1075. package/dist/weight/volatility.d.ts.map +1 -0
  1076. package/dist/weight/volatility.js +203 -0
  1077. package/dist/weight/volatility.js.map +1 -0
  1078. package/dist/weight/volatilityDoc.d.ts +10 -0
  1079. package/dist/weight/volatilityDoc.d.ts.map +1 -0
  1080. package/dist/weight/volatilityDoc.js +395 -0
  1081. package/dist/weight/volatilityDoc.js.map +1 -0
  1082. package/dist/weight/weightCompare.d.ts +70 -0
  1083. package/dist/weight/weightCompare.d.ts.map +1 -0
  1084. package/dist/weight/weightCompare.js +221 -0
  1085. package/dist/weight/weightCompare.js.map +1 -0
  1086. package/dist/weight/weightCompare2.d.ts +66 -0
  1087. package/dist/weight/weightCompare2.d.ts.map +1 -0
  1088. package/dist/weight/weightCompare2.js +218 -0
  1089. package/dist/weight/weightCompare2.js.map +1 -0
  1090. package/dist/weight/weightCompare3.d.ts +18 -0
  1091. package/dist/weight/weightCompare3.d.ts.map +1 -0
  1092. package/dist/weight/weightCompare3.js +222 -0
  1093. package/dist/weight/weightCompare3.js.map +1 -0
  1094. package/dist/weight/weightUi.d.ts +114 -0
  1095. package/dist/weight/weightUi.d.ts.map +1 -0
  1096. package/dist/weight/weightUi.js +256 -0
  1097. package/dist/weight/weightUi.js.map +1 -0
  1098. package/dist/workout/commands.d.ts +29 -0
  1099. package/dist/workout/commands.d.ts.map +1 -0
  1100. package/dist/workout/commands.js +35 -0
  1101. package/dist/workout/commands.js.map +1 -0
  1102. package/dist/workout/contraindication.d.ts +11 -0
  1103. package/dist/workout/contraindication.d.ts.map +1 -0
  1104. package/dist/workout/contraindication.js +11 -0
  1105. package/dist/workout/contraindication.js.map +1 -0
  1106. package/dist/workout/dayPhrase.d.ts +13 -0
  1107. package/dist/workout/dayPhrase.d.ts.map +1 -0
  1108. package/dist/workout/dayPhrase.js +15 -0
  1109. package/dist/workout/dayPhrase.js.map +1 -0
  1110. package/dist/workout/fieldLabels.d.ts +5 -0
  1111. package/dist/workout/fieldLabels.d.ts.map +1 -0
  1112. package/dist/workout/fieldLabels.js +45 -0
  1113. package/dist/workout/fieldLabels.js.map +1 -0
  1114. package/dist/workout/index.d.ts +30 -0
  1115. package/dist/workout/index.d.ts.map +1 -0
  1116. package/dist/workout/index.js +34 -0
  1117. package/dist/workout/index.js.map +1 -0
  1118. package/dist/workout/land.d.ts +45 -0
  1119. package/dist/workout/land.d.ts.map +1 -0
  1120. package/dist/workout/land.js +280 -0
  1121. package/dist/workout/land.js.map +1 -0
  1122. package/dist/workout/landBatch.d.ts +60 -0
  1123. package/dist/workout/landBatch.d.ts.map +1 -0
  1124. package/dist/workout/landBatch.js +225 -0
  1125. package/dist/workout/landBatch.js.map +1 -0
  1126. package/dist/workout/landBatchPages.d.ts +31 -0
  1127. package/dist/workout/landBatchPages.d.ts.map +1 -0
  1128. package/dist/workout/landBatchPages.js +132 -0
  1129. package/dist/workout/landBatchPages.js.map +1 -0
  1130. package/dist/workout/landPages.d.ts +41 -0
  1131. package/dist/workout/landPages.d.ts.map +1 -0
  1132. package/dist/workout/landPages.js +153 -0
  1133. package/dist/workout/landPages.js.map +1 -0
  1134. package/dist/workout/landRunner.d.ts +42 -0
  1135. package/dist/workout/landRunner.d.ts.map +1 -0
  1136. package/dist/workout/landRunner.js +155 -0
  1137. package/dist/workout/landRunner.js.map +1 -0
  1138. package/dist/workout/movementType.d.ts +14 -0
  1139. package/dist/workout/movementType.d.ts.map +1 -0
  1140. package/dist/workout/movementType.js +16 -0
  1141. package/dist/workout/movementType.js.map +1 -0
  1142. package/dist/workout/plan.d.ts +21 -0
  1143. package/dist/workout/plan.d.ts.map +1 -0
  1144. package/dist/workout/plan.js +44 -0
  1145. package/dist/workout/plan.js.map +1 -0
  1146. package/dist/workout/planStore.d.ts +157 -0
  1147. package/dist/workout/planStore.d.ts.map +1 -0
  1148. package/dist/workout/planStore.js +282 -0
  1149. package/dist/workout/planStore.js.map +1 -0
  1150. package/dist/workout/precheckPrompt.d.ts +7 -0
  1151. package/dist/workout/precheckPrompt.d.ts.map +1 -0
  1152. package/dist/workout/precheckPrompt.js +35 -0
  1153. package/dist/workout/precheckPrompt.js.map +1 -0
  1154. package/dist/workout/progress.d.ts +12 -0
  1155. package/dist/workout/progress.d.ts.map +1 -0
  1156. package/dist/workout/progress.js +16 -0
  1157. package/dist/workout/progress.js.map +1 -0
  1158. package/dist/workout/receipt.d.ts +15 -0
  1159. package/dist/workout/receipt.d.ts.map +1 -0
  1160. package/dist/workout/receipt.js +128 -0
  1161. package/dist/workout/receipt.js.map +1 -0
  1162. package/dist/workout/review.d.ts +12 -0
  1163. package/dist/workout/review.d.ts.map +1 -0
  1164. package/dist/workout/review.js +15 -0
  1165. package/dist/workout/review.js.map +1 -0
  1166. package/dist/workout/routes.d.ts +13 -0
  1167. package/dist/workout/routes.d.ts.map +1 -0
  1168. package/dist/workout/routes.js +49 -0
  1169. package/dist/workout/routes.js.map +1 -0
  1170. package/dist/workout/wizard.d.ts +14 -0
  1171. package/dist/workout/wizard.d.ts.map +1 -0
  1172. package/dist/workout/wizard.js +20 -0
  1173. package/dist/workout/wizard.js.map +1 -0
  1174. package/dist/workout/write.d.ts +78 -0
  1175. package/dist/workout/write.d.ts.map +1 -0
  1176. package/dist/workout/write.js +607 -0
  1177. package/dist/workout/write.js.map +1 -0
  1178. package/dist/workout/xunjiBackfill.d.ts +36 -0
  1179. package/dist/workout/xunjiBackfill.d.ts.map +1 -0
  1180. package/dist/workout/xunjiBackfill.js +198 -0
  1181. package/dist/workout/xunjiBackfill.js.map +1 -0
  1182. package/dist/workout/xunjiPush.d.ts +33 -0
  1183. package/dist/workout/xunjiPush.d.ts.map +1 -0
  1184. package/dist/workout/xunjiPush.js +236 -0
  1185. package/dist/workout/xunjiPush.js.map +1 -0
  1186. package/dist/workout/xunjiRunner.d.ts +29 -0
  1187. package/dist/workout/xunjiRunner.d.ts.map +1 -0
  1188. package/dist/workout/xunjiRunner.js +110 -0
  1189. package/dist/workout/xunjiRunner.js.map +1 -0
  1190. package/dist/xunji/backfill.d.ts +63 -0
  1191. package/dist/xunji/backfill.d.ts.map +1 -0
  1192. package/dist/xunji/backfill.js +150 -0
  1193. package/dist/xunji/backfill.js.map +1 -0
  1194. package/dist/xunji/catalog.d.ts +53 -0
  1195. package/dist/xunji/catalog.d.ts.map +1 -0
  1196. package/dist/xunji/catalog.js +126 -0
  1197. package/dist/xunji/catalog.js.map +1 -0
  1198. package/dist/xunji/cli.d.ts +3 -0
  1199. package/dist/xunji/cli.d.ts.map +1 -0
  1200. package/dist/xunji/cli.js +15 -0
  1201. package/dist/xunji/cli.js.map +1 -0
  1202. package/dist/xunji/exitMap.d.ts +37 -0
  1203. package/dist/xunji/exitMap.d.ts.map +1 -0
  1204. package/dist/xunji/exitMap.js +42 -0
  1205. package/dist/xunji/exitMap.js.map +1 -0
  1206. package/dist/xunji/fetch.d.ts +77 -0
  1207. package/dist/xunji/fetch.d.ts.map +1 -0
  1208. package/dist/xunji/fetch.js +160 -0
  1209. package/dist/xunji/fetch.js.map +1 -0
  1210. package/dist/xunji/index.d.ts +21 -0
  1211. package/dist/xunji/index.d.ts.map +1 -0
  1212. package/dist/xunji/index.js +18 -0
  1213. package/dist/xunji/index.js.map +1 -0
  1214. package/dist/xunji/key.d.ts +77 -0
  1215. package/dist/xunji/key.d.ts.map +1 -0
  1216. package/dist/xunji/key.js +160 -0
  1217. package/dist/xunji/key.js.map +1 -0
  1218. package/dist/xunji/overlay-plan.d.ts +79 -0
  1219. package/dist/xunji/overlay-plan.d.ts.map +1 -0
  1220. package/dist/xunji/overlay-plan.js +145 -0
  1221. package/dist/xunji/overlay-plan.js.map +1 -0
  1222. package/dist/xunji/planSource.d.ts +40 -0
  1223. package/dist/xunji/planSource.d.ts.map +1 -0
  1224. package/dist/xunji/planSource.js +78 -0
  1225. package/dist/xunji/planSource.js.map +1 -0
  1226. package/dist/xunji/push.d.ts +55 -0
  1227. package/dist/xunji/push.d.ts.map +1 -0
  1228. package/dist/xunji/push.js +69 -0
  1229. package/dist/xunji/push.js.map +1 -0
  1230. package/dist/xunji/rateLimit.d.ts +44 -0
  1231. package/dist/xunji/rateLimit.d.ts.map +1 -0
  1232. package/dist/xunji/rateLimit.js +99 -0
  1233. package/dist/xunji/rateLimit.js.map +1 -0
  1234. package/dist/xunji/request.d.ts +48 -0
  1235. package/dist/xunji/request.d.ts.map +1 -0
  1236. package/dist/xunji/request.js +60 -0
  1237. package/dist/xunji/request.js.map +1 -0
  1238. package/dist/xunji/retry.d.ts +50 -0
  1239. package/dist/xunji/retry.d.ts.map +1 -0
  1240. package/dist/xunji/retry.js +106 -0
  1241. package/dist/xunji/retry.js.map +1 -0
  1242. package/dist/xunji/rows.d.ts +32 -0
  1243. package/dist/xunji/rows.d.ts.map +1 -0
  1244. package/dist/xunji/rows.js +74 -0
  1245. package/dist/xunji/rows.js.map +1 -0
  1246. package/dist/xunji/run-sync.d.ts +106 -0
  1247. package/dist/xunji/run-sync.d.ts.map +1 -0
  1248. package/dist/xunji/run-sync.js +223 -0
  1249. package/dist/xunji/run-sync.js.map +1 -0
  1250. package/dist/xunji/run.d.ts +56 -0
  1251. package/dist/xunji/run.d.ts.map +1 -0
  1252. package/dist/xunji/run.js +300 -0
  1253. package/dist/xunji/run.js.map +1 -0
  1254. package/dist/xunji/store.d.ts +31 -0
  1255. package/dist/xunji/store.d.ts.map +1 -0
  1256. package/dist/xunji/store.js +60 -0
  1257. package/dist/xunji/store.js.map +1 -0
  1258. package/dist/xunji/subcommands.d.ts +64 -0
  1259. package/dist/xunji/subcommands.d.ts.map +1 -0
  1260. package/dist/xunji/subcommands.js +203 -0
  1261. package/dist/xunji/subcommands.js.map +1 -0
  1262. package/dist/xunji/upsert.d.ts +61 -0
  1263. package/dist/xunji/upsert.d.ts.map +1 -0
  1264. package/dist/xunji/upsert.js +100 -0
  1265. package/dist/xunji/upsert.js.map +1 -0
  1266. package/package.json +7 -3
  1267. package/src/xunji/data//350/256/255/350/256/260/345/256/230/346/226/271/345/212/250/344/275/234.json +1099 -0
  1268. package/templates/help.html +1 -1
  1269. package/workflows/08-/350/272/253/344/275/223/347/273/206/350/212/202.md +60 -0
  1270. package/workflows/09-/350/272/253/346/235/220/347/205/247/347/211/207.md +98 -0
@@ -2,57 +2,154 @@ import { FetchError } from '../fetch/errors.js';
2
2
  import { BODY_ALIVE, EX_ALIVE, calcTdee, shiftISODate, todayISO } from './utils.js';
3
3
  export const WATER_NAME = '💧水';
4
4
  const round1 = (n) => Math.round(n * 10) / 10;
5
- /** 窗口选择器:Nd / 本周/上周/今年…(老家别名 week_cur 等一并支持)/ custom / 默认 30d。
5
+ /** 窗口词汇与解析的**唯一定义地**(#250 重做)。
6
6
  *
7
- * #103 G4 · window 白名单:Nd 仅收唤醒词契约的 7 档(7/15/30/60/90/180/365),
8
- * 具名仅收显式分支(week_cur/week_prev/month_cur/month_prev/year_cur/custom+中文别名);
9
- * 其余(`99d`、未知串)一律抛 FetchError(上层转 bad-input),不再静默生效/静默回退 30d。 */
10
- export const COMBINED_WINDOW_DAYS = [7, 15, 30, 60, 90, 180, 365];
7
+ * #250 · 按用户 2026-09-13 的两条要求重做:
8
+ * **语义正确**——「今日/本周/本月/今年」一律按**自然周期**解析(本周=本周一..锚点日,
9
+ * 与老技能 `--week current` 同义);锚点缺省=真实今天,可由调用方显式传入(演示与测试用它复现固定日)。
10
+ * ② **接口全面**——`Nd` 不再限于 #103 G4 7 档白名单(那条契约是当时「只做组合分析」留下的限制),
11
+ * 改收任意正整数(上限 `MAX_WINDOW_DAYS`,只挡笔误);另加两件正交能力:
12
+ * `offset`(窗口整体平移 ±Nd/±Nw/±Nm/±Ny,用来表达「一年前今天」这类)与
13
+ * `compareWindow`(对比侧窗口,同一套词表,另收 `prev`=紧邻主窗口之前的等长窗口)。
14
+ *
15
+ * 未知值一律抛 FetchError(上层转 bad-input),不静默回退。 */
16
+ export const WINDOW_WORDS = [
17
+ '今日', '昨日', '本周', '上周', '下周', '本月', '上月', '今年', '去年', '工作日', '周末', 'custom',
18
+ ];
19
+ /** 可接受的窗口写法(说明性清单:词表 + Nd 族 + 老家别名),报错文本与文档引用它。 */
11
20
  export const COMBINED_WINDOWS = [
12
- '7d', '15d', '30d', '60d', '90d', '180d', '365d',
13
- 'week_cur', 'week_prev', 'month_cur', 'month_prev', 'year_cur', 'custom',
14
- '本周', '上周', '本月', '上月', '今年',
21
+ ...WINDOW_WORDS,
22
+ 'Nd', '7d', '15d', '30d', '60d', '90d', '180d', '365d',
23
+ 'week_cur', 'week_prev', 'week_next', 'month_cur', 'month_prev', 'year_cur', 'year_prev',
24
+ 'today', 'yesterday', 'prev',
15
25
  ];
26
+ /** Nd 的跨度上限(约十年):只挡笔误,不挡真实用法。 */
27
+ export const MAX_WINDOW_DAYS = 3650;
28
+ const DAY_MS = 86400000;
29
+ /** 相对词与 Nd 的解析:返回 [start, end](闭区间,ISO 日)。
30
+ * `today` =锚点(缺省真实今天);`custom` 走调用方给的 start/end,缺省=近 30 天。 */
16
31
  export function resolveWindow(window, start, end, today = todayISO()) {
17
32
  const t = Date.parse(today + 'T12:00:00Z');
18
33
  if (Number.isNaN(t))
19
34
  throw new FetchError('日期非法: ' + today);
20
- const weekday = Math.floor(((t / 86400000) + 3) % 7);
35
+ const weekday = Math.floor(((t / DAY_MS) + 3) % 7);
21
36
  const mondayOffset = -weekday;
22
- if (window === 'custom') {
37
+ const w = String(window ?? '').trim();
38
+ if (w === 'custom') {
23
39
  if (start && end)
24
40
  return [start, end];
25
41
  return [shiftISODate(today, -30), shiftISODate(today, -1)];
26
42
  }
27
- const m = /^([0-9]+)d$/.exec(window);
28
- if (m) {
29
- const n = Number(m[1]);
30
- if (!COMBINED_WINDOW_DAYS.includes(n)) {
31
- throw new FetchError('window 非法(Nd 仅收 ' + COMBINED_WINDOW_DAYS.map((d) => d + 'd').join('/') + '):' + window);
43
+ const md = /^([0-9]+)d$/.exec(w);
44
+ if (md) {
45
+ const n = Number(md[1]);
46
+ if (!(n >= 1 && n <= MAX_WINDOW_DAYS)) {
47
+ throw new FetchError('window 非法(Nd 1..' + MAX_WINDOW_DAYS + '):' + w);
32
48
  }
33
49
  return [shiftISODate(today, -(n - 1)), today];
34
50
  }
35
- if (window === '本周' || window === 'week_cur')
51
+ if (w === '今日' || w === 'today')
52
+ return [today, today];
53
+ if (w === '昨日' || w === 'yesterday')
54
+ return [shiftISODate(today, -1), shiftISODate(today, -1)];
55
+ if (w === '本周' || w === 'week_cur')
36
56
  return [shiftISODate(today, mondayOffset), today];
37
- if (window === '上周' || window === 'week_prev')
57
+ if (w === '上周' || w === 'week_prev')
38
58
  return [shiftISODate(today, mondayOffset - 7), shiftISODate(today, mondayOffset - 1)];
39
- if (window === '本月' || window === 'month_cur')
59
+ if (w === '下周' || w === 'week_next')
60
+ return [shiftISODate(today, mondayOffset + 7), shiftISODate(today, mondayOffset + 13)];
61
+ if (w === '本月' || w === 'month_cur')
40
62
  return [today.slice(0, 8) + '01', today];
41
- if (window === '上月' || window === 'month_prev') {
63
+ if (w === '上月' || w === 'month_prev') {
42
64
  const firstThis = today.slice(0, 8) + '01';
43
65
  const lastLast = shiftISODate(firstThis, -1);
44
66
  return [lastLast.slice(0, 8) + '01', lastLast];
45
67
  }
46
- if (window === '今年' || window === 'year_cur')
68
+ if (w === '今年' || w === 'year_cur')
47
69
  return [today.slice(0, 4) + '-01-01', today];
48
- // #103 G4 · 未知值不再静默回退 30d:显式拒绝,上层转 bad-input(exit 2)。
49
- throw new FetchError('window 非法,可选: ' + COMBINED_WINDOWS.join(', '));
70
+ if (w === '去年' || w === 'year_prev') {
71
+ const y = Number(today.slice(0, 4)) - 1;
72
+ return [y + '-01-01', y + '-12-31'];
73
+ }
74
+ // 工作日/周末:#250 定为「最近一个已经过完或正在过的周六–周日」+「紧邻它之前的周一–周五」。
75
+ // (锚点常是周一,本周六日还在未来——那样取到的窗是空的;按「最近的那对」取,任何锚点都落在过去、可比较。)
76
+ if (w === '工作日' || w === '周末') {
77
+ const dow = (weekday + 1) % 7; // 0=周日,1=周一,…,6=周六
78
+ const satOffset = dow === 0 ? -1 : dow === 6 ? 0 : -(dow + 1);
79
+ if (w === '周末')
80
+ return [shiftISODate(today, satOffset), shiftISODate(today, satOffset + 1)];
81
+ const fri = satOffset - 1;
82
+ return [shiftISODate(today, fri - 4), shiftISODate(today, fri)];
83
+ }
84
+ throw new FetchError('window 非法,可选: ' + WINDOW_WORDS.join('/') + ',或 Nd(1..' + MAX_WINDOW_DAYS + ')');
85
+ }
86
+ /** 单日相对词:`date`/`from`/`to` 这类「一个日」的字段与窗口共用同一套说法。
87
+ * 收 ISO 日、今日/昨日/前天(today/yesterday),其余原样交回由调用方校验(未知值不静默生效)。 */
88
+ export function resolveDay(token, today = todayISO()) {
89
+ const d = String(token ?? '').trim();
90
+ if (d === '今日' || d === 'today')
91
+ return today;
92
+ if (d === '昨日' || d === 'yesterday')
93
+ return shiftISODate(today, -1);
94
+ if (d === '前天')
95
+ return shiftISODate(today, -2);
96
+ return d;
50
97
  }
51
- /** 档案 TDEE(体重恒 70.0 parity,见 utils 说明)。 */
98
+ /** 窗口平移:`±Nd`(天)/`±Nw`(周=7 天)/`±Nm`(按日历进退 N 月)/`±Ny`(按日历进退 N 年)。
99
+ * 例:「一年前今天」=`window:今日` + `offset:-1y`;「最近 30 天 vs 之前 30 天」=`compareWindow:prev`。 */
100
+ export function applyOffset(range, offset) {
101
+ const o = String(offset ?? '').trim();
102
+ if (!o)
103
+ return [range[0], range[1]];
104
+ const m = /^([+-])([0-9]+)([dwmy])$/.exec(o);
105
+ if (!m)
106
+ throw new FetchError('offset 非法(须 ±Nd/±Nw/±Nm/±Ny):' + o);
107
+ const sign = m[1] === '-' ? -1 : 1;
108
+ const n = Number(m[2]) * sign;
109
+ const shift = (iso) => {
110
+ if (m[3] === 'd')
111
+ return shiftISODate(iso, n);
112
+ if (m[3] === 'w')
113
+ return shiftISODate(iso, n * 7);
114
+ return shiftMonthsISO(iso, m[3] === 'y' ? n * 12 : n);
115
+ };
116
+ const [s, e] = [shift(range[0]), shift(range[1])];
117
+ if (s > e)
118
+ throw new FetchError('offset 后窗口倒置: ' + s + '..' + e);
119
+ return [s, e];
120
+ }
121
+ /** 对比侧窗口:词表与主窗口同源;`prev` =紧邻主窗口之前的**等长**窗口(「近 N 天 vs 之前 N 天」)。 */
122
+ export function resolveCompareWindow(spec, main, start, end, today = todayISO()) {
123
+ const w = String(spec ?? '').trim();
124
+ if (w === 'prev') {
125
+ const days = (Date.parse(main[1]) - Date.parse(main[0])) / DAY_MS + 1;
126
+ return [shiftISODate(main[0], -days), shiftISODate(main[0], -1)];
127
+ }
128
+ return resolveWindow(w, start, end, today);
129
+ }
130
+ /** 按日历进退 N 月(日号超出该月末则收到月末)。 */
131
+ function shiftMonthsISO(iso, months) {
132
+ const [y, m, d] = iso.split('-').map(Number);
133
+ const total = y * 12 + (m - 1) + months;
134
+ const ny = Math.floor(total / 12);
135
+ const nm = ((total % 12) + 12) % 12 + 1;
136
+ const lastDay = new Date(Date.UTC(ny, nm, 0)).getUTCDate();
137
+ const nd = Math.min(d, lastDay);
138
+ return ny + '-' + String(nm).padStart(2, '0') + '-' + String(nd).padStart(2, '0');
139
+ }
140
+ /** 档案 TDEE(#463 候选 A:体重取**最近一次称重**,档案里没有体重记录才回退 70.0)。
141
+ *
142
+ * 改前恒用 70.0 kg 常量 ⇒ 消耗类数值与真实体重脱钩(#463 的根因)。**取数层补最近称重**这一处
143
+ * 与 `reportPlate.ts` 的 `energyOfWindow`(`d26d6ec`:档案四要素 + 最近一次称重)**同口径**:
144
+ * 同一个人的 TDEE 不再有两个数。回退值 `70.0` 一字不改 ⇒ **档案无体重记录时数值与改前逐字相同**。
145
+ * 「最近」按 `date DESC, time DESC, id DESC`(与 `buildSeries` 里取当日首条同一套排序键,
146
+ * 只用 `weight_log` 现存列;`weight_log` 没有软删列,故不加 ALIVE 过滤)。 */
52
147
  export function loadProfileTdee(db) {
53
148
  try {
54
149
  const prof = db.prepare('SELECT age, gender, height_cm, activity_level FROM user_profile WHERE id = 1').get();
55
- return calcTdee(70.0, prof?.height_cm ?? 170.0, prof?.age ?? 30, prof?.gender ?? 'male', prof?.activity_level ?? 'moderate');
150
+ const last = db.prepare('SELECT weight_kg FROM weight_log ORDER BY date DESC, time DESC, id DESC LIMIT 1').get();
151
+ const latestWeightKg = typeof last?.weight_kg === 'number' && last.weight_kg > 0 ? last.weight_kg : 70.0;
152
+ return calcTdee(latestWeightKg, prof?.height_cm ?? 170.0, prof?.age ?? 30, prof?.gender ?? 'male', prof?.activity_level ?? 'moderate');
56
153
  }
57
154
  catch {
58
155
  return 1800;
@@ -1 +1 @@
1
- {"version":3,"file":"series.js","sourceRoot":"","sources":["../../src/analysis/series.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"series.js","sourceRoot":"","sources":["../../src/analysis/series.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/analysis/simulate.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,WAAW,OAAO,CAAC;AAChC,eAAO,MAAM,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAc,CAAC;AAMzD,MAAM,WAAW,QAAQ;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE;AACnF,MAAM,WAAW,OAAO;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AA0D9J,MAAM,WAAW,cAAe,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAEzM,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAoB,GAAG,cAAc,CAmBhI;AAED,MAAM,WAAW,YAAa,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEnL,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAkB,GAAG,YAAY,CAsBvH"}
1
+ {"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/analysis/simulate.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,WAAW,OAAO,CAAC;AAChC,eAAO,MAAM,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAc,CAAC;AAMzD,MAAM,WAAW,QAAQ;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE;AACnF,MAAM,WAAW,OAAO;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AAqE9J,MAAM,WAAW,cAAe,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAEzM,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAoB,GAAG,cAAc,CAmBhI;AAED,MAAM,WAAW,YAAa,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEnL,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAkB,GAAG,YAAY,CAsBvH"}
@@ -5,8 +5,11 @@ export const HEALTHY_RATE = [0.5, 1.0];
5
5
  const round = (n) => Math.round(n);
6
6
  const round1 = (n) => Math.round(n * 10) / 10;
7
7
  const round2 = (n) => Math.round(n * 100) / 100;
8
- function degrade(kind, title, series, need) {
9
- return { kind, title, degraded: true, degradeMsg: '数据不足:需要 ' + need + ',当前只有 ' + series.length + ' 天。', insight: '数据不足,无法预测。' };
8
+ /** 数据不足的降级(#466):门槛词与「当前」读数**同一量纲**——由调用方把实际的**有效记录条数**
9
+ * 按门槛同一条量纲传进来(改前这里报的是 `series.length`=**请求窗口的天数**,空库时会说出
10
+ * 「需要 ≥14 天体重记录,当前只有 14 天」这种自相矛盾的句子)。 */
11
+ function degrade(kind, title, need, have) {
12
+ return { kind, title, degraded: true, degradeMsg: '数据不足:需要 ' + need + ',当前只有 ' + have + '。', insight: '数据不足,无法预测。' };
10
13
  }
11
14
  function linearRate(series, field) {
12
15
  const vals = [];
@@ -57,15 +60,23 @@ function forecastSeries(current, ratePerDay, sigma, horizonDays, startDate, labe
57
60
  const band = ((2 * sigma * Math.sqrt(d)) / Math.sqrt(7));
58
61
  pts.push({ date: shiftISODate(startDate, d), value: round2(v), lo: round2(v - band), hi: round2(v + band) });
59
62
  }
63
+ /* #455 路线 A(轨迹末点口径):非整周时补第 horizonDays 天末点——本页的结论句写的是
64
+ * 「<horizonDays> 天后体重约 X kg」,没有那一行时 X 其实是第 horizonDays−余数 天的值
65
+ * (30 天页给的是第 28 天的值)。整周 horizon 不补,回归不变。 */
66
+ if (horizonDays % 7 !== 0) {
67
+ const v = current + ratePerDay * horizonDays;
68
+ const band = ((2 * sigma * Math.sqrt(horizonDays)) / Math.sqrt(7));
69
+ pts.push({ date: shiftISODate(startDate, horizonDays), value: round2(v), lo: round2(v - band), hi: round2(v + band) });
70
+ }
60
71
  return { label, horizonDays, points: pts };
61
72
  }
62
73
  export function weightForecast(series, horizonDays, title, kind = 'weight_forecast') {
63
74
  const wv = weightVals(series);
64
75
  if (wv.length < SIM_MIN_DAYS)
65
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天体重记录');
76
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天体重记录', wv.length + ' 天体重记录');
66
77
  const [rate, latest] = linearRate(series, 'weightKg');
67
78
  if (rate === null || latest === null)
68
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天有效体重记录');
79
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天有效体重记录', wv.length + ' 天体重记录');
69
80
  const sigma = residualStd(series, 'weightKg', rate);
70
81
  const last = series[series.length - 1];
71
82
  const fc = forecastSeries(latest, rate, sigma, horizonDays, last.date, title);
@@ -84,10 +95,10 @@ export function weightForecast(series, horizonDays, title, kind = 'weight_foreca
84
95
  export function weightTarget(series, targetKg, title, kind = 'weight_target') {
85
96
  const wv = weightVals(series);
86
97
  if (wv.length < SIM_MIN_DAYS)
87
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天体重记录');
98
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天体重记录', wv.length + ' 天体重记录');
88
99
  const [rate, latest] = linearRate(series, 'weightKg');
89
100
  if (rate === null || latest === null || Math.abs(rate) < 1e-6)
90
- return degrade(kind, title, series, '体重处于平台期(无趋势)');
101
+ return degrade(kind, title, '有趋势的体重记录', wv.length + ' 天体重记录但处于平台期');
91
102
  // 有意偏离老家:老家 (latest-target)/rate 在正常趋近时恒为负→恒降级;此处用 (target-latest)/rate,趋近为正(待口径裁决 T7)。
92
103
  const daysLeft = (targetKg - latest) / rate;
93
104
  if (daysLeft < 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/analysis/simulate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/analysis/simulate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"simulate2.d.ts","sourceRoot":"","sources":["../../src/analysis/simulate2.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAavD,MAAM,WAAW,YAAa,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAE9O,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAmB,GAAG,YAAY,CAyBvH;AAED,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAE5Q,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAsB,GAAG,eAAe,CAsB/I;AAED,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAoC3M,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAqB,GAAG,eAAe,CA0BnI;AAED,MAAM,WAAW,cAAe,SAAQ,OAAO;IAAG,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEtI,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAiB,GAAG,cAAc,CAcxG;AAED,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAAG,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEpH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAoB,GAAG,iBAAiB,CAajH;AAED,MAAM,WAAW,gBAAiB,SAAQ,OAAO;IAAG,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEzH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAsB,GAAG,gBAAgB,CAajH"}
1
+ {"version":3,"file":"simulate2.d.ts","sourceRoot":"","sources":["../../src/analysis/simulate2.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAkBvD,MAAM,WAAW,YAAa,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAE9O,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAmB,GAAG,YAAY,CA8BvH;AAED,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAE5Q,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAsB,GAAG,eAAe,CA8B/I;AAED,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAA;CAAE;AAoC3M,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAqB,GAAG,eAAe,CAiCnI;AAED,MAAM,WAAW,cAAe,SAAQ,OAAO;IAAG,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEtI,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAiB,GAAG,cAAc,CAcxG;AAED,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAAG,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEpH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAoB,GAAG,iBAAiB,CAoBjH;AAED,MAAM,WAAW,gBAAiB,SAAQ,OAAO;IAAG,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE;AAEzH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAsB,GAAG,gBAAgB,CAajH"}
@@ -4,8 +4,13 @@ import { shiftISODate } from './utils.js';
4
4
  import { HEALTHY_RATE, KCAL_PER_KG, SIM_MIN_DAYS } from './simulate.js';
5
5
  const round = (n) => Math.round(n);
6
6
  const round2 = (n) => Math.round(n * 100) / 100;
7
- function degrade(kind, title, series, need) {
8
- return { kind, title, degraded: true, degradeMsg: '数据不足:需要 ' + need + ',当前只有 ' + series.length + ' 天。', insight: '数据不足,无法预测。' };
7
+ /** 数据不足的降级(#466):**门槛词与「当前」读数同一量纲**。
8
+ *
9
+ * 改前写的是「需要 ≥14 天摄入记录,当前只有 <窗口长度> 天」——把**请求窗口的天数**当成**实际有效记录的条数**报,
10
+ * 空库跑 20 条预测词时读者会看到「需要 ≥14 天…当前只有 14 天」这种自相矛盾的句子(#466 的根因)。
11
+ * 现在由**调用方**把两样都按同一条量纲传进来:`need`=门槛原文,`have`=实际有效记录的读数(如「13 天体重记录」)。 */
12
+ function degrade(kind, title, need, have) {
13
+ return { kind, title, degraded: true, degradeMsg: '数据不足:需要 ' + need + ',当前只有 ' + have + '。', insight: '数据不足,无法预测。' };
9
14
  }
10
15
  function weightVals(series) {
11
16
  return series.map((s) => s.weightKg).filter((v) => v !== null && v !== undefined);
@@ -14,7 +19,7 @@ export function weightSimCut(series, cutKcal, title, kind = 'weight_sim_cut') {
14
19
  const dfAvg = seriesAvg(series, 'deficit');
15
20
  const wv = weightVals(series);
16
21
  if (wv.length === 0)
17
- return degrade(kind, title, series, '至少 1 条体重记录');
22
+ return degrade(kind, title, '至少 1 天体重记录', wv.length + ' 天体重记录');
18
23
  const current = wv[wv.length - 1];
19
24
  const newDeficit = (dfAvg ?? 0) + cutKcal;
20
25
  const weeklyLoss = (newDeficit * 7) / KCAL_PER_KG;
@@ -24,6 +29,11 @@ export function weightSimCut(series, cutKcal, title, kind = 'weight_sim_cut') {
24
29
  for (let d = 7; d <= horizon; d += 7) {
25
30
  pts.push({ date: shiftISODate(last.date, d), value: round2(current - (weeklyLoss * d) / 7) });
26
31
  }
32
+ /* #455 路线 A:90 不能被 7 整除 ⇒ 上面那些整周点只到第 84 天,而表头与结论句都说「90 天」,
33
+ * 读者拿不到第 90 天那一行去核。故**非整周时补第 horizon 天末点**(整周 horizon 不补,回归不变)。 */
34
+ if (horizon % 7 !== 0) {
35
+ pts.push({ date: shiftISODate(last.date, horizon), value: round2(current - (weeklyLoss * horizon) / 7) });
36
+ }
27
37
  const feasible = HEALTHY_RATE[0] <= weeklyLoss && weeklyLoss <= HEALTHY_RATE[1];
28
38
  return {
29
39
  kind, title, degraded: false,
@@ -39,17 +49,25 @@ export function weightSimCut(series, cutKcal, title, kind = 'weight_sim_cut') {
39
49
  export function weightSimTarget(series, targetKg, days, title, kind = 'weight_sim_target') {
40
50
  const wv = weightVals(series);
41
51
  if (wv.length === 0)
42
- return degrade(kind, title, series, '至少 1 条体重记录');
52
+ return degrade(kind, title, '至少 1 天体重记录', wv.length + ' 天体重记录');
43
53
  const current = wv[wv.length - 1];
44
54
  const weeklyRate = targetKg / (days / 7);
45
55
  const neededDeficit = round((targetKg * KCAL_PER_KG) / days);
46
56
  const feasible = HEALTHY_RATE[0] <= weeklyRate && weeklyRate <= HEALTHY_RATE[1];
57
+ /* #620 增量1:`feasible`二值丢方向——0.47<0.5偏慢会被说成“偏快/超出”。方向由 `weeklyRate` 当场判定,`feasible`布尔原样保留(冻结的 metrics 1/0 不断)。 */
58
+ const slow = weeklyRate < HEALTHY_RATE[0];
47
59
  const last = series[series.length - 1];
48
60
  const pts = [{ date: last.date, value: round2(current) }];
49
61
  for (let d = 7; d <= days; d += 7) {
50
- pts.push({ date: shiftISODate(last.date, d), value: round2(current - (targetKg * Math.min(d, days)) / days) });
62
+ pts.push({ date: shiftISODate(last.date, d), value: round2(current - (targetKg * d) / days) });
63
+ }
64
+ /* #455 路线 A(并修不一致二「第 90 天的值钉在第 84 天的日期上」):非整周时补第 days 天末点。
65
+ * 改前这里下面还有一行 `(pts[末]).value = round2(current - targetKg)` 的**强写**——它把第 days 天
66
+ * 的目标值硬塞进最后一个整周点(实例:69.1 落在第 84 天那一行,而该日期的诚实值是 69.5)。
67
+ * 补末点之后,第 days 天那一行的**日期与值同轴**(都是第 days 天),那行强写随之删除。 */
68
+ if (days % 7 !== 0) {
69
+ pts.push({ date: shiftISODate(last.date, days), value: round2(current - targetKg) });
51
70
  }
52
- pts[pts.length - 1].value = round2(current - targetKg);
53
71
  return {
54
72
  kind, title, degraded: false,
55
73
  start: series[0].date, end: last.date, days: series.length,
@@ -57,7 +75,7 @@ export function weightSimTarget(series, targetKg, days, title, kind = 'weight_si
57
75
  weeklyRate: round2(weeklyRate), neededDeficit, feasible,
58
76
  assumption: days + ' 天减 ' + targetKg + ' kg = 每周 ' + weeklyRate.toFixed(2) + ' kg,需日均缺口 ' + neededDeficit + ' 卡(≈ 每天少吃 2 碗米饭 + 30 分钟快走)',
59
77
  forecast: { label: title, horizonDays: days, points: pts },
60
- insight: '所需日均缺口 ' + neededDeficit + ' 卡,速率 ' + weeklyRate.toFixed(2) + ' kg/周' + (feasible ? '(可行,在健康范围内)。' : '(⚠️ 不可行:超出每周 0.5-1.0 kg 安全范围,拉长时间或降低目标)。'),
78
+ insight: '所需日均缺口 ' + neededDeficit + ' 卡,速率 ' + weeklyRate.toFixed(2) + ' kg/周' + (feasible ? '(可行,在健康范围内)。' : slow ? '(⚠️ 不可行:每周仅 ' + weeklyRate.toFixed(2) + ' kg,偏慢,缩短时间或提高目标)。' : '(⚠️ 不可行:超出每周 0.5-1.0 kg 安全范围,拉长时间或降低目标)。'),
61
79
  };
62
80
  }
63
81
  function linearRateCal(series) {
@@ -100,7 +118,7 @@ function residualStdCal(series, slope) {
100
118
  export function calorieForecast(series, horizonDays, title, kind = 'calorie_forecast') {
101
119
  const cal = series.map((s) => s.calories).filter((v) => v !== null && v !== undefined);
102
120
  if (cal.length < SIM_MIN_DAYS)
103
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天摄入记录');
121
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天摄入记录', cal.length + ' 天摄入记录');
104
122
  const [rate, latest] = linearRateCal(series);
105
123
  const sigma = residualStdCal(series, rate ?? 0);
106
124
  const last = series[series.length - 1];
@@ -111,6 +129,13 @@ export function calorieForecast(series, horizonDays, title, kind = 'calorie_fore
111
129
  const band = ((2 * sigma * Math.sqrt(d)) / Math.sqrt(7));
112
130
  pts.push({ date: shiftISODate(last.date, d), value: round2(v), lo: round2(v - band), hi: round2(v + band) });
113
131
  }
132
+ /* #455 路线 A(同 `weightSimCut`):非整周时补第 horizonDays 天末点——本页 KPI 卡与结论句都写
133
+ * 「<horizonDays> 天后预计 X 卡」,没有那一行时 X 其实是第 horizonDays−余数 天的值。 */
134
+ if (horizonDays % 7 !== 0) {
135
+ const v = latest + rate * horizonDays;
136
+ const band = ((2 * sigma * Math.sqrt(horizonDays)) / Math.sqrt(7));
137
+ pts.push({ date: shiftISODate(last.date, horizonDays), value: round2(v), lo: round2(v - band), hi: round2(v + band) });
138
+ }
114
139
  const fc = { label: title, horizonDays, points: pts };
115
140
  const endV = pts[pts.length - 1].value;
116
141
  const nearGoal = goal !== null && goal !== undefined && Math.abs(endV - goal) <= 100;
@@ -127,7 +152,7 @@ export function calorieForecast(series, horizonDays, title, kind = 'calorie_fore
127
152
  export function calorieGoalEta(series, title, kind = 'calorie_goal') {
128
153
  const cal = series.map((s) => s.calories).filter((v) => v !== null && v !== undefined);
129
154
  if (cal.length < SIM_MIN_DAYS)
130
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天摄入记录');
155
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天摄入记录', cal.length + ' 天摄入记录');
131
156
  const avg = cal.reduce((a, b) => a + b, 0) / cal.length;
132
157
  const goal = series[series.length - 1].calorieGoal ?? 1800;
133
158
  const onTarget = Math.abs(avg - goal) <= goal * 0.1;
@@ -142,8 +167,15 @@ export function calorieGoalEta(series, title, kind = 'calorie_goal') {
142
167
  }
143
168
  export function calorieDeficitEta(series, title, kind = 'calorie_deficit') {
144
169
  const df = series.map((s) => s.deficit).filter((v) => v !== null && v !== undefined);
170
+ /* #466(编排者 2026-09-16 裁定 J)· **量纲词前后必须同一**:门槛段与读数段都写「摄入+运动记录」。
171
+ *
172
+ * 改前读数写的是「N 天**摄入或运动**记录」——与门槛的 AND 口径相抵:`deficit` 在 `series.ts:239`
173
+ * 的算法是「摄入非空才算得出缺口」(`calories === null ⇒ deficit = null`),故这一支能读到的天数
174
+ * 本来就是**摄入(+运动)**那些天,不含「只有运动、没有摄入」的天。量纲词写成并集会把读者引到
175
+ * 一个不存在的口径上:那几天既没进分母、也没进分子。判据件=
176
+ * `test/analysis-deficit-eta-466.test.mjs`(① 两段量纲词逐字相等;② 读数=`deficit` 非空条数)。 */
145
177
  if (df.length < SIM_MIN_DAYS)
146
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天摄入+运动记录');
178
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天摄入+运动记录', df.length + ' 天摄入+运动记录');
147
179
  const avgDf = df.reduce((a, b) => a + b, 0) / df.length;
148
180
  const weekly = (avgDf * 7) / KCAL_PER_KG;
149
181
  const healthy = weekly >= 0.3 && weekly <= 1.2;
@@ -158,7 +190,7 @@ export function calorieDeficitEta(series, title, kind = 'calorie_deficit') {
158
190
  export function calorieStability(series, title, kind = 'calorie_stability') {
159
191
  const cal = series.map((s) => s.calories).filter((v) => v !== null && v !== undefined);
160
192
  if (cal.length < SIM_MIN_DAYS)
161
- return degrade(kind, title, series, '≥' + SIM_MIN_DAYS + ' 天摄入记录');
193
+ return degrade(kind, title, '≥' + SIM_MIN_DAYS + ' 天摄入记录', cal.length + ' 天摄入记录');
162
194
  const avg = cal.reduce((a, b) => a + b, 0) / cal.length;
163
195
  const sigma = Math.sqrt(cal.reduce((a, c) => a + (c - avg) * (c - avg), 0) / (cal.length - 1));
164
196
  const stable = sigma <= 300;
@@ -1 +1 @@
1
- {"version":3,"file":"simulate2.js","sourceRoot":"","sources":["../../src/analysis/simulate2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulate2.js","sourceRoot":"","sources":["../../src/analysis/simulate2.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,21 @@
4
4
  * 与赤字/摘要同口径;水行 calories=0,数值等价)。空窗抛错(缺失阻断不返空)。
5
5
  * 精度:summary trend_value/start_avg/end_avg/weekday_avg/weekend_avg/weekend_diff
6
6
  * 与 series[].calorie 统一 round(2)(check_decimal_precision 白名单原样)。
7
+ * #160 收口(本票第一件·达标口径):`series[].calorie` 对**没记录的天**保 null(删掉老口径的
8
+ * `?? 0`——「没记录=0 卡」)。达标统计只在**有记录的天**里算(分母=有记录的天),与页上图例
9
+ * 「没记录的那天不按 0 算,只在有记录的两天之间连线」同一条口径;没记录的天也不再在图上落 0 点
10
+ * (折线靠 `connectNulls` 跨空)。
11
+ * #497(本票第二件·均值口径):均值族(avg/weekday_avg/weekend_avg)分母一律=**有记录的天**
12
+ * (各组内空白日不进分母);首末值(start_avg/end_avg → trend 判定)取**有记录的第一天/最后一天**,
13
+ * 窗边空白日不再读 0。改前「按窗口天数、空白日按 0」是旧口径(见 git 历史),读数变化见 t497 证据。
7
14
  */
8
15
  import type { DatabaseSync } from 'node:sqlite';
9
16
  export interface TrendDay {
10
17
  date: string;
11
18
  weekday: string;
12
19
  type: '工作日' | '周末';
13
- calorie: number;
20
+ /** 当日摄入(卡,round(2));**没记录的天为 null**(#160 收口:空白日不按 0 算)。 */
21
+ calorie: number | null;
14
22
  }
15
23
  export interface TrendSummary {
16
24
  avg: number;
@@ -1 +1 @@
1
- {"version":3,"file":"trend.d.ts","sourceRoot":"","sources":["../../src/analysis/trend.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKhD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;CACpE;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAC/E,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IACzE,WAAW,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;CACpE;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CAClF;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CA2CtF"}
1
+ {"version":3,"file":"trend.d.ts","sourceRoot":"","sources":["../../src/analysis/trend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAKhD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IAClD,2DAA2D;IAC3D,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAC/E,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IACzE,WAAW,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;CACpE;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;CAClF;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CA2DtF"}