skill-calorie 0.2.3 → 0.2.5

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 (1302) hide show
  1. package/SKILL.md +474 -122
  2. package/dist/.gen-inputs.json +86 -0
  3. package/dist/analysis/anomaly/common.d.ts +11 -1
  4. package/dist/analysis/anomaly/common.d.ts.map +1 -1
  5. package/dist/analysis/anomaly/common.js +11 -12
  6. package/dist/analysis/anomaly/common.js.map +1 -1
  7. package/dist/analysis/anomaly/diet.d.ts.map +1 -1
  8. package/dist/analysis/anomaly/diet.js +11 -3
  9. package/dist/analysis/anomaly/diet.js.map +1 -1
  10. package/dist/analysis/commands.d.ts +62 -0
  11. package/dist/analysis/commands.d.ts.map +1 -0
  12. package/dist/analysis/commands.js +386 -0
  13. package/dist/analysis/commands.js.map +1 -0
  14. package/dist/analysis/contraindications.d.ts.map +1 -1
  15. package/dist/analysis/contraindications.js +16 -12
  16. package/dist/analysis/contraindications.js.map +1 -1
  17. package/dist/analysis/cross.d.ts +3 -0
  18. package/dist/analysis/cross.d.ts.map +1 -1
  19. package/dist/analysis/cross.js +54 -26
  20. package/dist/analysis/cross.js.map +1 -1
  21. package/dist/analysis/dashboard.d.ts.map +1 -1
  22. package/dist/analysis/dashboard.js +3 -2
  23. package/dist/analysis/dashboard.js.map +1 -1
  24. package/dist/analysis/deficit.d.ts +4 -2
  25. package/dist/analysis/deficit.d.ts.map +1 -1
  26. package/dist/analysis/deficit.js +2 -1
  27. package/dist/analysis/deficit.js.map +1 -1
  28. package/dist/analysis/exerciseReview.js +1 -1
  29. package/dist/analysis/exerciseReview.js.map +1 -1
  30. package/dist/analysis/healthPlate.d.ts +21 -0
  31. package/dist/analysis/healthPlate.d.ts.map +1 -0
  32. package/dist/analysis/healthPlate.js +41 -0
  33. package/dist/analysis/healthPlate.js.map +1 -0
  34. package/dist/analysis/historyStore.d.ts +30 -0
  35. package/dist/analysis/historyStore.d.ts.map +1 -0
  36. package/dist/analysis/historyStore.js +32 -0
  37. package/dist/analysis/historyStore.js.map +1 -0
  38. package/dist/analysis/index.d.ts +17 -0
  39. package/dist/analysis/index.d.ts.map +1 -0
  40. package/dist/analysis/index.js +17 -0
  41. package/dist/analysis/index.js.map +1 -0
  42. package/dist/analysis/multiTrend.d.ts +67 -0
  43. package/dist/analysis/multiTrend.d.ts.map +1 -0
  44. package/dist/analysis/multiTrend.js +106 -0
  45. package/dist/analysis/multiTrend.js.map +1 -0
  46. package/dist/analysis/multiTrendPage.d.ts +4 -0
  47. package/dist/analysis/multiTrendPage.d.ts.map +1 -0
  48. package/dist/analysis/multiTrendPage.js +502 -0
  49. package/dist/analysis/multiTrendPage.js.map +1 -0
  50. package/dist/analysis/reportDoc.d.ts +12 -0
  51. package/dist/analysis/reportDoc.d.ts.map +1 -0
  52. package/dist/analysis/reportDoc.js +244 -0
  53. package/dist/analysis/reportDoc.js.map +1 -0
  54. package/dist/analysis/reportDocBmi.d.ts +4 -0
  55. package/dist/analysis/reportDocBmi.d.ts.map +1 -0
  56. package/dist/analysis/reportDocBmi.js +104 -0
  57. package/dist/analysis/reportDocBmi.js.map +1 -0
  58. package/dist/analysis/reportDocParts.d.ts +77 -0
  59. package/dist/analysis/reportDocParts.d.ts.map +1 -0
  60. package/dist/analysis/reportDocParts.js +249 -0
  61. package/dist/analysis/reportDocParts.js.map +1 -0
  62. package/dist/analysis/reportDocScore.d.ts +8 -0
  63. package/dist/analysis/reportDocScore.d.ts.map +1 -0
  64. package/dist/analysis/reportDocScore.js +223 -0
  65. package/dist/analysis/reportDocScore.js.map +1 -0
  66. package/dist/analysis/reportDocScoreSeries.d.ts +3 -0
  67. package/dist/analysis/reportDocScoreSeries.d.ts.map +1 -0
  68. package/dist/analysis/reportDocScoreSeries.js +27 -0
  69. package/dist/analysis/reportDocScoreSeries.js.map +1 -0
  70. package/dist/analysis/reportDocTracked.d.ts +10 -0
  71. package/dist/analysis/reportDocTracked.d.ts.map +1 -0
  72. package/dist/analysis/reportDocTracked.js +196 -0
  73. package/dist/analysis/reportDocTracked.js.map +1 -0
  74. package/dist/analysis/reportPlate.d.ts +163 -0
  75. package/dist/analysis/reportPlate.d.ts.map +1 -0
  76. package/dist/analysis/reportPlate.js +251 -0
  77. package/dist/analysis/reportPlate.js.map +1 -0
  78. package/dist/analysis/review.d.ts.map +1 -1
  79. package/dist/analysis/review.js +5 -3
  80. package/dist/analysis/review.js.map +1 -1
  81. package/dist/analysis/routes.d.ts +18 -0
  82. package/dist/analysis/routes.d.ts.map +1 -0
  83. package/dist/analysis/routes.js +178 -0
  84. package/dist/analysis/routes.js.map +1 -0
  85. package/dist/analysis/series.d.ts +31 -6
  86. package/dist/analysis/series.d.ts.map +1 -1
  87. package/dist/analysis/series.js +121 -24
  88. package/dist/analysis/series.js.map +1 -1
  89. package/dist/analysis/simulate.d.ts +4 -2
  90. package/dist/analysis/simulate.d.ts.map +1 -1
  91. package/dist/analysis/simulate.js +22 -8
  92. package/dist/analysis/simulate.js.map +1 -1
  93. package/dist/analysis/simulate2.d.ts.map +1 -1
  94. package/dist/analysis/simulate2.js +47 -12
  95. package/dist/analysis/simulate2.js.map +1 -1
  96. package/dist/analysis/trend.d.ts +9 -1
  97. package/dist/analysis/trend.d.ts.map +1 -1
  98. package/dist/analysis/trend.js +24 -8
  99. package/dist/analysis/trend.js.map +1 -1
  100. package/dist/analysis/utils.d.ts +55 -21
  101. package/dist/analysis/utils.d.ts.map +1 -1
  102. package/dist/analysis/utils.js +85 -28
  103. package/dist/analysis/utils.js.map +1 -1
  104. package/dist/body/bodyDocs.d.ts +4 -0
  105. package/dist/body/bodyDocs.d.ts.map +1 -0
  106. package/dist/body/bodyDocs.js +284 -0
  107. package/dist/body/bodyDocs.js.map +1 -0
  108. package/dist/body/bodyPlate.d.ts +145 -0
  109. package/dist/body/bodyPlate.d.ts.map +1 -0
  110. package/dist/body/bodyPlate.js +243 -0
  111. package/dist/body/bodyPlate.js.map +1 -0
  112. package/dist/body/bodyReadUi.d.ts +47 -0
  113. package/dist/body/bodyReadUi.d.ts.map +1 -0
  114. package/dist/body/bodyReadUi.js +164 -0
  115. package/dist/body/bodyReadUi.js.map +1 -0
  116. package/dist/body/commands.d.ts +33 -0
  117. package/dist/body/commands.d.ts.map +1 -0
  118. package/dist/body/commands.js +19 -0
  119. package/dist/body/commands.js.map +1 -0
  120. package/dist/body/compare.d.ts +62 -0
  121. package/dist/body/compare.d.ts.map +1 -0
  122. package/dist/body/compare.js +162 -0
  123. package/dist/body/compare.js.map +1 -0
  124. package/dist/body/compareCompositionDoc.d.ts +3 -0
  125. package/dist/body/compareCompositionDoc.d.ts.map +1 -0
  126. package/dist/body/compareCompositionDoc.js +99 -0
  127. package/dist/body/compareCompositionDoc.js.map +1 -0
  128. package/dist/body/compareMeasureDoc.d.ts +3 -0
  129. package/dist/body/compareMeasureDoc.d.ts.map +1 -0
  130. package/dist/body/compareMeasureDoc.js +91 -0
  131. package/dist/body/compareMeasureDoc.js.map +1 -0
  132. package/dist/body/compareUi.d.ts +12 -0
  133. package/dist/body/compareUi.d.ts.map +1 -0
  134. package/dist/body/compareUi.js +27 -0
  135. package/dist/body/compareUi.js.map +1 -0
  136. package/dist/body/index.d.ts +17 -0
  137. package/dist/body/index.d.ts.map +1 -0
  138. package/dist/body/index.js +17 -0
  139. package/dist/body/index.js.map +1 -0
  140. package/dist/body/log.d.ts +29 -0
  141. package/dist/body/log.d.ts.map +1 -0
  142. package/dist/body/log.js +196 -0
  143. package/dist/body/log.js.map +1 -0
  144. package/dist/body/receipt.d.ts +52 -0
  145. package/dist/body/receipt.d.ts.map +1 -0
  146. package/dist/body/receipt.js +248 -0
  147. package/dist/body/receipt.js.map +1 -0
  148. package/dist/body/receiptData.d.ts +46 -0
  149. package/dist/body/receiptData.d.ts.map +1 -0
  150. package/dist/body/receiptData.js +107 -0
  151. package/dist/body/receiptData.js.map +1 -0
  152. package/dist/body/receiptUi.d.ts +9 -0
  153. package/dist/body/receiptUi.d.ts.map +1 -0
  154. package/dist/body/receiptUi.js +75 -0
  155. package/dist/body/receiptUi.js.map +1 -0
  156. package/dist/body/remove.d.ts +21 -0
  157. package/dist/body/remove.d.ts.map +1 -0
  158. package/dist/body/remove.js +78 -0
  159. package/dist/body/remove.js.map +1 -0
  160. package/dist/body/routes.d.ts +10 -0
  161. package/dist/body/routes.d.ts.map +1 -0
  162. package/dist/body/routes.js +20 -0
  163. package/dist/body/routes.js.map +1 -0
  164. package/dist/body/view.d.ts +21 -0
  165. package/dist/body/view.d.ts.map +1 -0
  166. package/dist/body/view.js +50 -0
  167. package/dist/body/view.js.map +1 -0
  168. package/dist/body/wizard.d.ts +14 -0
  169. package/dist/body/wizard.d.ts.map +1 -0
  170. package/dist/body/wizard.js +21 -0
  171. package/dist/body/wizard.js.map +1 -0
  172. package/dist/body/wizardDocs.d.ts +4 -0
  173. package/dist/body/wizardDocs.d.ts.map +1 -0
  174. package/dist/body/wizardDocs.js +260 -0
  175. package/dist/body/wizardDocs.js.map +1 -0
  176. package/dist/body/wizardPlate.d.ts +146 -0
  177. package/dist/body/wizardPlate.d.ts.map +1 -0
  178. package/dist/body/wizardPlate.js +260 -0
  179. package/dist/body/wizardPlate.js.map +1 -0
  180. package/dist/body/wizardPrompt.d.ts +52 -0
  181. package/dist/body/wizardPrompt.d.ts.map +1 -0
  182. package/dist/body/wizardPrompt.js +146 -0
  183. package/dist/body/wizardPrompt.js.map +1 -0
  184. package/dist/body/wizardUi.d.ts +11 -0
  185. package/dist/body/wizardUi.d.ts.map +1 -0
  186. package/dist/body/wizardUi.js +35 -0
  187. package/dist/body/wizardUi.js.map +1 -0
  188. package/dist/cli/cmd_read.d.ts +7 -26
  189. package/dist/cli/cmd_read.d.ts.map +1 -1
  190. package/dist/cli/cmd_read.js +68 -1084
  191. package/dist/cli/cmd_read.js.map +1 -1
  192. package/dist/cli/config.d.ts +16 -0
  193. package/dist/cli/config.d.ts.map +1 -0
  194. package/dist/cli/config.js +68 -0
  195. package/dist/cli/config.js.map +1 -0
  196. package/dist/cli/delivery.d.ts +35 -0
  197. package/dist/cli/delivery.d.ts.map +1 -0
  198. package/dist/cli/delivery.js +224 -0
  199. package/dist/cli/delivery.js.map +1 -0
  200. package/dist/cli/health.d.ts +7 -0
  201. package/dist/cli/health.d.ts.map +1 -0
  202. package/dist/cli/health.js +21 -0
  203. package/dist/cli/health.js.map +1 -0
  204. package/dist/cli/keys.d.ts +302 -165
  205. package/dist/cli/keys.d.ts.map +1 -1
  206. package/dist/cli/keys.js +101 -77
  207. package/dist/cli/keys.js.map +1 -1
  208. package/dist/cli/readArgs.d.ts +21 -0
  209. package/dist/cli/readArgs.d.ts.map +1 -0
  210. package/dist/cli/readArgs.js +73 -0
  211. package/dist/cli/readArgs.js.map +1 -0
  212. package/dist/cli/registry.d.ts +12 -0
  213. package/dist/cli/registry.d.ts.map +1 -0
  214. package/dist/cli/registry.js +38 -0
  215. package/dist/cli/registry.js.map +1 -0
  216. package/dist/cli/write.d.ts +14 -17
  217. package/dist/cli/write.d.ts.map +1 -1
  218. package/dist/cli/write.js +18 -946
  219. package/dist/cli/write.js.map +1 -1
  220. package/dist/config.d.ts +55 -0
  221. package/dist/config.d.ts.map +1 -0
  222. package/dist/config.js +64 -0
  223. package/dist/config.js.map +1 -0
  224. package/dist/diet/commands.d.ts +42 -0
  225. package/dist/diet/commands.d.ts.map +1 -0
  226. package/dist/diet/commands.js +45 -0
  227. package/dist/diet/commands.js.map +1 -0
  228. package/dist/diet/dietEngine.d.ts +79 -0
  229. package/dist/diet/dietEngine.d.ts.map +1 -0
  230. package/dist/diet/dietEngine.js +173 -0
  231. package/dist/diet/dietEngine.js.map +1 -0
  232. package/dist/diet/dietUi.d.ts +14 -0
  233. package/dist/diet/dietUi.d.ts.map +1 -0
  234. package/dist/diet/dietUi.js +38 -0
  235. package/dist/diet/dietUi.js.map +1 -0
  236. package/dist/diet/edit.d.ts +22 -0
  237. package/dist/diet/edit.d.ts.map +1 -0
  238. package/dist/diet/edit.js +96 -0
  239. package/dist/diet/edit.js.map +1 -0
  240. package/dist/diet/fieldLabels.d.ts +5 -0
  241. package/dist/diet/fieldLabels.d.ts.map +1 -0
  242. package/dist/diet/fieldLabels.js +44 -0
  243. package/dist/diet/fieldLabels.js.map +1 -0
  244. package/dist/diet/index.d.ts +22 -0
  245. package/dist/diet/index.d.ts.map +1 -0
  246. package/dist/diet/index.js +21 -0
  247. package/dist/diet/index.js.map +1 -0
  248. package/dist/diet/library.d.ts +20 -0
  249. package/dist/diet/library.d.ts.map +1 -0
  250. package/dist/diet/library.js +52 -0
  251. package/dist/diet/library.js.map +1 -0
  252. package/dist/diet/libraryDocs.d.ts +7 -0
  253. package/dist/diet/libraryDocs.d.ts.map +1 -0
  254. package/dist/diet/libraryDocs.js +361 -0
  255. package/dist/diet/libraryDocs.js.map +1 -0
  256. package/dist/diet/libraryPlate.d.ts +41 -0
  257. package/dist/diet/libraryPlate.d.ts.map +1 -0
  258. package/dist/diet/libraryPlate.js +57 -0
  259. package/dist/diet/libraryPlate.js.map +1 -0
  260. package/dist/diet/log.d.ts +18 -0
  261. package/dist/diet/log.d.ts.map +1 -0
  262. package/dist/diet/log.js +152 -0
  263. package/dist/diet/log.js.map +1 -0
  264. package/dist/diet/nutrition.d.ts +37 -0
  265. package/dist/diet/nutrition.d.ts.map +1 -0
  266. package/dist/diet/nutrition.js +135 -0
  267. package/dist/diet/nutrition.js.map +1 -0
  268. package/dist/diet/nutritionPort.d.ts +126 -0
  269. package/dist/diet/nutritionPort.d.ts.map +1 -0
  270. package/dist/diet/nutritionPort.js +248 -0
  271. package/dist/diet/nutritionPort.js.map +1 -0
  272. package/dist/diet/nutritionPortDocs.d.ts +106 -0
  273. package/dist/diet/nutritionPortDocs.d.ts.map +1 -0
  274. package/dist/diet/nutritionPortDocs.js +651 -0
  275. package/dist/diet/nutritionPortDocs.js.map +1 -0
  276. package/dist/diet/precheck.d.ts +7 -0
  277. package/dist/diet/precheck.d.ts.map +1 -0
  278. package/dist/diet/precheck.js +194 -0
  279. package/dist/diet/precheck.js.map +1 -0
  280. package/dist/diet/precheckLabel.d.ts +4 -0
  281. package/dist/diet/precheckLabel.d.ts.map +1 -0
  282. package/dist/diet/precheckLabel.js +191 -0
  283. package/dist/diet/precheckLabel.js.map +1 -0
  284. package/dist/diet/precheckParts.d.ts +49 -0
  285. package/dist/diet/precheckParts.d.ts.map +1 -0
  286. package/dist/diet/precheckParts.js +69 -0
  287. package/dist/diet/precheckParts.js.map +1 -0
  288. package/dist/diet/precheckPort.d.ts +82 -0
  289. package/dist/diet/precheckPort.d.ts.map +1 -0
  290. package/dist/diet/precheckPort.js +178 -0
  291. package/dist/diet/precheckPort.js.map +1 -0
  292. package/dist/diet/productImport.d.ts +28 -0
  293. package/dist/diet/productImport.d.ts.map +1 -0
  294. package/dist/diet/productImport.js +152 -0
  295. package/dist/diet/productImport.js.map +1 -0
  296. package/dist/diet/productStore.d.ts +62 -0
  297. package/dist/diet/productStore.d.ts.map +1 -0
  298. package/dist/diet/productStore.js +73 -0
  299. package/dist/diet/productStore.js.map +1 -0
  300. package/dist/diet/products.d.ts +15 -0
  301. package/dist/diet/products.d.ts.map +1 -0
  302. package/dist/diet/products.js +87 -0
  303. package/dist/diet/products.js.map +1 -0
  304. package/dist/diet/ranking.d.ts +18 -0
  305. package/dist/diet/ranking.d.ts.map +1 -0
  306. package/dist/diet/ranking.js +23 -0
  307. package/dist/diet/ranking.js.map +1 -0
  308. package/dist/diet/rankingDocs.d.ts +13 -0
  309. package/dist/diet/rankingDocs.d.ts.map +1 -0
  310. package/dist/diet/rankingDocs.js +341 -0
  311. package/dist/diet/rankingDocs.js.map +1 -0
  312. package/dist/diet/rankingPlate.d.ts +42 -0
  313. package/dist/diet/rankingPlate.d.ts.map +1 -0
  314. package/dist/diet/rankingPlate.js +96 -0
  315. package/dist/diet/rankingPlate.js.map +1 -0
  316. package/dist/diet/receipt.d.ts +34 -0
  317. package/dist/diet/receipt.d.ts.map +1 -0
  318. package/dist/diet/receipt.js +371 -0
  319. package/dist/diet/receipt.js.map +1 -0
  320. package/dist/diet/review.d.ts +36 -0
  321. package/dist/diet/review.d.ts.map +1 -0
  322. package/dist/diet/review.js +137 -0
  323. package/dist/diet/review.js.map +1 -0
  324. package/dist/diet/reviewDocs.d.ts +72 -0
  325. package/dist/diet/reviewDocs.d.ts.map +1 -0
  326. package/dist/diet/reviewDocs.js +312 -0
  327. package/dist/diet/reviewDocs.js.map +1 -0
  328. package/dist/diet/routes.d.ts +12 -0
  329. package/dist/diet/routes.d.ts.map +1 -0
  330. package/dist/diet/routes.js +108 -0
  331. package/dist/diet/routes.js.map +1 -0
  332. package/dist/diet/sourceStatsDocs.d.ts +3 -0
  333. package/dist/diet/sourceStatsDocs.d.ts.map +1 -0
  334. package/dist/diet/sourceStatsDocs.js +115 -0
  335. package/dist/diet/sourceStatsDocs.js.map +1 -0
  336. package/dist/diet/today.d.ts +14 -0
  337. package/dist/diet/today.d.ts.map +1 -0
  338. package/dist/diet/today.js +87 -0
  339. package/dist/diet/today.js.map +1 -0
  340. package/dist/diet/todayDocs.d.ts +53 -0
  341. package/dist/diet/todayDocs.d.ts.map +1 -0
  342. package/dist/diet/todayDocs.js +238 -0
  343. package/dist/diet/todayDocs.js.map +1 -0
  344. package/dist/exercise/cardio.d.ts +11 -0
  345. package/dist/exercise/cardio.d.ts.map +1 -0
  346. package/dist/exercise/cardio.js +14 -0
  347. package/dist/exercise/cardio.js.map +1 -0
  348. package/dist/exercise/categoryColors.d.ts +23 -0
  349. package/dist/exercise/categoryColors.d.ts.map +1 -0
  350. package/dist/exercise/categoryColors.js +28 -0
  351. package/dist/exercise/categoryColors.js.map +1 -0
  352. package/dist/exercise/commands.d.ts +20 -0
  353. package/dist/exercise/commands.d.ts.map +1 -0
  354. package/dist/exercise/commands.js +22 -0
  355. package/dist/exercise/commands.js.map +1 -0
  356. package/dist/exercise/distribution.d.ts +11 -0
  357. package/dist/exercise/distribution.d.ts.map +1 -0
  358. package/dist/exercise/distribution.js +14 -0
  359. package/dist/exercise/distribution.js.map +1 -0
  360. package/dist/exercise/edit.d.ts +22 -0
  361. package/dist/exercise/edit.d.ts.map +1 -0
  362. package/dist/exercise/edit.js +150 -0
  363. package/dist/exercise/edit.js.map +1 -0
  364. package/dist/exercise/exerciseStore.d.ts +87 -0
  365. package/dist/exercise/exerciseStore.d.ts.map +1 -0
  366. package/dist/exercise/exerciseStore.js +293 -0
  367. package/dist/exercise/exerciseStore.js.map +1 -0
  368. package/dist/exercise/fieldLabels.d.ts +5 -0
  369. package/dist/exercise/fieldLabels.d.ts.map +1 -0
  370. package/dist/exercise/fieldLabels.js +34 -0
  371. package/dist/exercise/fieldLabels.js.map +1 -0
  372. package/dist/exercise/goal.d.ts +16 -0
  373. package/dist/exercise/goal.d.ts.map +1 -0
  374. package/dist/exercise/goal.js +46 -0
  375. package/dist/exercise/goal.js.map +1 -0
  376. package/dist/exercise/index.d.ts +17 -0
  377. package/dist/exercise/index.d.ts.map +1 -0
  378. package/dist/exercise/index.js +17 -0
  379. package/dist/exercise/index.js.map +1 -0
  380. package/dist/exercise/log.d.ts +19 -0
  381. package/dist/exercise/log.d.ts.map +1 -0
  382. package/dist/exercise/log.js +102 -0
  383. package/dist/exercise/log.js.map +1 -0
  384. package/dist/exercise/precheck.d.ts +19 -0
  385. package/dist/exercise/precheck.d.ts.map +1 -0
  386. package/dist/exercise/precheck.js +127 -0
  387. package/dist/exercise/precheck.js.map +1 -0
  388. package/dist/exercise/recap.d.ts +11 -0
  389. package/dist/exercise/recap.d.ts.map +1 -0
  390. package/dist/exercise/recap.js +14 -0
  391. package/dist/exercise/recap.js.map +1 -0
  392. package/dist/exercise/receipt.d.ts +43 -0
  393. package/dist/exercise/receipt.d.ts.map +1 -0
  394. package/dist/exercise/receipt.js +401 -0
  395. package/dist/exercise/receipt.js.map +1 -0
  396. package/dist/exercise/records.d.ts +60 -0
  397. package/dist/exercise/records.d.ts.map +1 -0
  398. package/dist/exercise/records.js +317 -0
  399. package/dist/exercise/records.js.map +1 -0
  400. package/dist/exercise/routes.d.ts +21 -0
  401. package/dist/exercise/routes.d.ts.map +1 -0
  402. package/dist/exercise/routes.js +38 -0
  403. package/dist/exercise/routes.js.map +1 -0
  404. package/dist/exercise/sportPortDocs.d.ts +9 -0
  405. package/dist/exercise/sportPortDocs.d.ts.map +1 -0
  406. package/dist/exercise/sportPortDocs.js +896 -0
  407. package/dist/exercise/sportPortDocs.js.map +1 -0
  408. package/dist/exercise/sportUi.d.ts +79 -0
  409. package/dist/exercise/sportUi.d.ts.map +1 -0
  410. package/dist/exercise/sportUi.js +237 -0
  411. package/dist/exercise/sportUi.js.map +1 -0
  412. package/dist/exercise/strength.d.ts +11 -0
  413. package/dist/exercise/strength.d.ts.map +1 -0
  414. package/dist/exercise/strength.js +14 -0
  415. package/dist/exercise/strength.js.map +1 -0
  416. package/dist/exercise/trend.d.ts +11 -0
  417. package/dist/exercise/trend.d.ts.map +1 -0
  418. package/dist/exercise/trend.js +14 -0
  419. package/dist/exercise/trend.js.map +1 -0
  420. package/dist/fetch/audit.d.ts +2 -0
  421. package/dist/fetch/audit.d.ts.map +1 -1
  422. package/dist/fetch/audit.js +11 -10
  423. package/dist/fetch/audit.js.map +1 -1
  424. package/dist/fetch/batch.js +1 -1
  425. package/dist/fetch/batch.js.map +1 -1
  426. package/dist/fetch/body.d.ts +104 -1
  427. package/dist/fetch/body.d.ts.map +1 -1
  428. package/dist/fetch/body.js +203 -31
  429. package/dist/fetch/body.js.map +1 -1
  430. package/dist/fetch/cli.js +11 -5
  431. package/dist/fetch/cli.js.map +1 -1
  432. package/dist/fetch/diet.d.ts +6 -5
  433. package/dist/fetch/diet.d.ts.map +1 -1
  434. package/dist/fetch/diet.js +19 -25
  435. package/dist/fetch/diet.js.map +1 -1
  436. package/dist/fetch/index.d.ts +5 -7
  437. package/dist/fetch/index.d.ts.map +1 -1
  438. package/dist/fetch/index.js +7 -6
  439. package/dist/fetch/index.js.map +1 -1
  440. package/dist/fetch/profile.d.ts +24 -3
  441. package/dist/fetch/profile.d.ts.map +1 -1
  442. package/dist/fetch/profile.js +43 -14
  443. package/dist/fetch/profile.js.map +1 -1
  444. package/dist/fetch/xunji-catalog.d.ts +5 -0
  445. package/dist/fetch/xunji-catalog.d.ts.map +1 -1
  446. package/dist/fetch/xunji-catalog.js +22 -1
  447. package/dist/fetch/xunji-catalog.js.map +1 -1
  448. package/dist/goal/commands.d.ts +35 -0
  449. package/dist/goal/commands.d.ts.map +1 -0
  450. package/dist/goal/commands.js +21 -0
  451. package/dist/goal/commands.js.map +1 -0
  452. package/dist/goal/goalExtraPlate.d.ts +45 -0
  453. package/dist/goal/goalExtraPlate.d.ts.map +1 -0
  454. package/dist/goal/goalExtraPlate.js +97 -0
  455. package/dist/goal/goalExtraPlate.js.map +1 -0
  456. package/dist/goal/goalHistory.d.ts +24 -0
  457. package/dist/goal/goalHistory.d.ts.map +1 -0
  458. package/dist/goal/goalHistory.js +46 -0
  459. package/dist/goal/goalHistory.js.map +1 -0
  460. package/dist/goal/goalPlate.d.ts +24 -0
  461. package/dist/goal/goalPlate.d.ts.map +1 -0
  462. package/dist/goal/goalPlate.js +34 -0
  463. package/dist/goal/goalPlate.js.map +1 -0
  464. package/dist/goal/goalPlates.d.ts +66 -0
  465. package/dist/goal/goalPlates.d.ts.map +1 -0
  466. package/dist/goal/goalPlates.js +114 -0
  467. package/dist/goal/goalPlates.js.map +1 -0
  468. package/dist/goal/goalRecommendDoc.d.ts +6 -0
  469. package/dist/goal/goalRecommendDoc.d.ts.map +1 -0
  470. package/dist/goal/goalRecommendDoc.js +107 -0
  471. package/dist/goal/goalRecommendDoc.js.map +1 -0
  472. package/dist/goal/goalStore.d.ts +56 -0
  473. package/dist/goal/goalStore.d.ts.map +1 -0
  474. package/dist/goal/goalStore.js +111 -0
  475. package/dist/goal/goalStore.js.map +1 -0
  476. package/dist/goal/goalWeightDoc.d.ts +7 -0
  477. package/dist/goal/goalWeightDoc.d.ts.map +1 -0
  478. package/dist/goal/goalWeightDoc.js +107 -0
  479. package/dist/goal/goalWeightDoc.js.map +1 -0
  480. package/dist/goal/index.d.ts +13 -0
  481. package/dist/goal/index.d.ts.map +1 -0
  482. package/dist/goal/index.js +13 -0
  483. package/dist/goal/index.js.map +1 -0
  484. package/dist/goal/nutritionGoal.d.ts +115 -0
  485. package/dist/goal/nutritionGoal.d.ts.map +1 -0
  486. package/dist/goal/nutritionGoal.js +168 -0
  487. package/dist/goal/nutritionGoal.js.map +1 -0
  488. package/dist/goal/precheck.d.ts +14 -0
  489. package/dist/goal/precheck.d.ts.map +1 -0
  490. package/dist/goal/precheck.js +213 -0
  491. package/dist/goal/precheck.js.map +1 -0
  492. package/dist/goal/read.d.ts +53 -0
  493. package/dist/goal/read.d.ts.map +1 -0
  494. package/dist/goal/read.js +154 -0
  495. package/dist/goal/read.js.map +1 -0
  496. package/dist/goal/receipt.d.ts +38 -0
  497. package/dist/goal/receipt.d.ts.map +1 -0
  498. package/dist/goal/receipt.js +290 -0
  499. package/dist/goal/receipt.js.map +1 -0
  500. package/dist/goal/resultDocs.d.ts +23 -0
  501. package/dist/goal/resultDocs.d.ts.map +1 -0
  502. package/dist/goal/resultDocs.js +279 -0
  503. package/dist/goal/resultDocs.js.map +1 -0
  504. package/dist/goal/routes.d.ts +12 -0
  505. package/dist/goal/routes.d.ts.map +1 -0
  506. package/dist/goal/routes.js +29 -0
  507. package/dist/goal/routes.js.map +1 -0
  508. package/dist/goal/set.d.ts +97 -0
  509. package/dist/goal/set.d.ts.map +1 -0
  510. package/dist/goal/set.js +103 -0
  511. package/dist/goal/set.js.map +1 -0
  512. package/dist/goal/write.d.ts +30 -0
  513. package/dist/goal/write.d.ts.map +1 -0
  514. package/dist/goal/write.js +102 -0
  515. package/dist/goal/write.js.map +1 -0
  516. package/dist/health.d.ts +41 -0
  517. package/dist/health.d.ts.map +1 -0
  518. package/dist/health.js +501 -0
  519. package/dist/health.js.map +1 -0
  520. package/dist/help-missing.json +35 -0
  521. package/dist/home/commands.d.ts +11 -0
  522. package/dist/home/commands.d.ts.map +1 -0
  523. package/dist/home/commands.js +8 -0
  524. package/dist/home/commands.js.map +1 -0
  525. package/dist/home/exercise.d.ts +27 -0
  526. package/dist/home/exercise.d.ts.map +1 -0
  527. package/dist/home/exercise.js +60 -0
  528. package/dist/home/exercise.js.map +1 -0
  529. package/dist/home/goalProgressDocs.d.ts +27 -0
  530. package/dist/home/goalProgressDocs.d.ts.map +1 -0
  531. package/dist/home/goalProgressDocs.js +363 -0
  532. package/dist/home/goalProgressDocs.js.map +1 -0
  533. package/dist/home/home.d.ts +38 -0
  534. package/dist/home/home.d.ts.map +1 -0
  535. package/dist/home/home.js +78 -0
  536. package/dist/home/home.js.map +1 -0
  537. package/dist/home/homeDocs.d.ts +8 -0
  538. package/dist/home/homeDocs.d.ts.map +1 -0
  539. package/dist/home/homeDocs.js +307 -0
  540. package/dist/home/homeDocs.js.map +1 -0
  541. package/dist/home/homeViewParts.d.ts +42 -0
  542. package/dist/home/homeViewParts.d.ts.map +1 -0
  543. package/dist/home/homeViewParts.js +316 -0
  544. package/dist/home/homeViewParts.js.map +1 -0
  545. package/dist/home/index.d.ts +13 -0
  546. package/dist/home/index.d.ts.map +1 -0
  547. package/dist/home/index.js +13 -0
  548. package/dist/home/index.js.map +1 -0
  549. package/dist/home/routes.d.ts +10 -0
  550. package/dist/home/routes.d.ts.map +1 -0
  551. package/dist/home/routes.js +47 -0
  552. package/dist/home/routes.js.map +1 -0
  553. package/dist/home/today.d.ts +50 -0
  554. package/dist/home/today.d.ts.map +1 -0
  555. package/dist/home/today.js +255 -0
  556. package/dist/home/today.js.map +1 -0
  557. package/dist/index.d.ts +24 -14
  558. package/dist/index.d.ts.map +1 -1
  559. package/dist/index.js +24 -9
  560. package/dist/index.js.map +1 -1
  561. package/dist/migrate/migrate.js +3 -3
  562. package/dist/migrate/migrate.js.map +1 -1
  563. package/dist/output.d.ts +22 -11
  564. package/dist/output.d.ts.map +1 -1
  565. package/dist/output.js +68 -128
  566. package/dist/output.js.map +1 -1
  567. package/dist/paths.d.ts +6 -2
  568. package/dist/paths.d.ts.map +1 -1
  569. package/dist/paths.js +28 -17
  570. package/dist/paths.js.map +1 -1
  571. package/dist/photo/commands.d.ts +55 -0
  572. package/dist/photo/commands.d.ts.map +1 -0
  573. package/dist/photo/commands.js +25 -0
  574. package/dist/photo/commands.js.map +1 -0
  575. package/dist/photo/compare.d.ts +24 -0
  576. package/dist/photo/compare.d.ts.map +1 -0
  577. package/dist/photo/compare.js +48 -0
  578. package/dist/photo/compare.js.map +1 -0
  579. package/dist/photo/compareDoc.d.ts +5 -0
  580. package/dist/photo/compareDoc.d.ts.map +1 -0
  581. package/dist/photo/compareDoc.js +221 -0
  582. package/dist/photo/compareDoc.js.map +1 -0
  583. package/dist/photo/dir.d.ts +5 -0
  584. package/dist/photo/dir.d.ts.map +1 -0
  585. package/dist/photo/dir.js +23 -0
  586. package/dist/photo/dir.js.map +1 -0
  587. package/dist/photo/gallery.d.ts +16 -0
  588. package/dist/photo/gallery.d.ts.map +1 -0
  589. package/dist/photo/gallery.js +45 -0
  590. package/dist/photo/gallery.js.map +1 -0
  591. package/dist/photo/galleryDoc.d.ts +12 -0
  592. package/dist/photo/galleryDoc.d.ts.map +1 -0
  593. package/dist/photo/galleryDoc.js +291 -0
  594. package/dist/photo/galleryDoc.js.map +1 -0
  595. package/dist/photo/gif.d.ts +28 -0
  596. package/dist/photo/gif.d.ts.map +1 -0
  597. package/dist/photo/gif.js +281 -0
  598. package/dist/photo/gif.js.map +1 -0
  599. package/dist/photo/gifDoc.d.ts +52 -0
  600. package/dist/photo/gifDoc.d.ts.map +1 -0
  601. package/dist/photo/gifDoc.js +317 -0
  602. package/dist/photo/gifDoc.js.map +1 -0
  603. package/dist/photo/help.d.ts +4 -0
  604. package/dist/photo/help.d.ts.map +1 -0
  605. package/dist/photo/help.js +87 -0
  606. package/dist/photo/help.js.map +1 -0
  607. package/dist/photo/helpCenter.d.ts +137 -0
  608. package/dist/photo/helpCenter.d.ts.map +1 -0
  609. package/dist/photo/helpCenter.js +475 -0
  610. package/dist/photo/helpCenter.js.map +1 -0
  611. package/dist/photo/helpDoc.d.ts +5 -0
  612. package/dist/photo/helpDoc.d.ts.map +1 -0
  613. package/dist/photo/helpDoc.js +205 -0
  614. package/dist/photo/helpDoc.js.map +1 -0
  615. package/dist/photo/helpDocContent.d.ts +77 -0
  616. package/dist/photo/helpDocContent.d.ts.map +1 -0
  617. package/dist/photo/helpDocContent.js +120 -0
  618. package/dist/photo/helpDocContent.js.map +1 -0
  619. package/dist/photo/helpDocCss.d.ts +5 -0
  620. package/dist/photo/helpDocCss.d.ts.map +1 -0
  621. package/dist/photo/helpDocCss.js +119 -0
  622. package/dist/photo/helpDocCss.js.map +1 -0
  623. package/dist/photo/helpFile.d.ts +26 -0
  624. package/dist/photo/helpFile.d.ts.map +1 -0
  625. package/dist/photo/helpFile.js +90 -0
  626. package/dist/photo/helpFile.js.map +1 -0
  627. package/dist/photo/helpLookup.d.ts +18 -0
  628. package/dist/photo/helpLookup.d.ts.map +1 -0
  629. package/dist/photo/helpLookup.js +58 -0
  630. package/dist/photo/helpLookup.js.map +1 -0
  631. package/dist/photo/helpPaths.d.ts +22 -0
  632. package/dist/photo/helpPaths.d.ts.map +1 -0
  633. package/dist/photo/helpPaths.js +22 -0
  634. package/dist/photo/helpPaths.js.map +1 -0
  635. package/dist/photo/helpShell.d.ts +16 -0
  636. package/dist/photo/helpShell.d.ts.map +1 -0
  637. package/dist/photo/helpShell.js +27 -0
  638. package/dist/photo/helpShell.js.map +1 -0
  639. package/dist/photo/index.d.ts +13 -0
  640. package/dist/photo/index.d.ts.map +1 -0
  641. package/dist/photo/index.js +13 -0
  642. package/dist/photo/index.js.map +1 -0
  643. package/dist/photo/manage.d.ts +13 -0
  644. package/dist/photo/manage.d.ts.map +1 -0
  645. package/dist/photo/manage.js +64 -0
  646. package/dist/photo/manage.js.map +1 -0
  647. package/dist/photo/photo.d.ts +118 -0
  648. package/dist/photo/photo.d.ts.map +1 -0
  649. package/dist/photo/photo.js +279 -0
  650. package/dist/photo/photo.js.map +1 -0
  651. package/dist/photo/photoThumb.d.ts +38 -0
  652. package/dist/photo/photoThumb.d.ts.map +1 -0
  653. package/dist/photo/photoThumb.js +83 -0
  654. package/dist/photo/photoThumb.js.map +1 -0
  655. package/dist/photo/photoUi.d.ts +39 -0
  656. package/dist/photo/photoUi.d.ts.map +1 -0
  657. package/dist/photo/photoUi.js +233 -0
  658. package/dist/photo/photoUi.js.map +1 -0
  659. package/dist/photo/photos.d.ts +78 -0
  660. package/dist/photo/photos.d.ts.map +1 -0
  661. package/dist/photo/photos.js +194 -0
  662. package/dist/photo/photos.js.map +1 -0
  663. package/dist/photo/picker.d.ts +41 -0
  664. package/dist/photo/picker.d.ts.map +1 -0
  665. package/dist/photo/picker.js +132 -0
  666. package/dist/photo/picker.js.map +1 -0
  667. package/dist/photo/pickerDoc.d.ts +12 -0
  668. package/dist/photo/pickerDoc.d.ts.map +1 -0
  669. package/dist/photo/pickerDoc.js +231 -0
  670. package/dist/photo/pickerDoc.js.map +1 -0
  671. package/dist/photo/receipt.d.ts +23 -0
  672. package/dist/photo/receipt.d.ts.map +1 -0
  673. package/dist/photo/receipt.js +331 -0
  674. package/dist/photo/receipt.js.map +1 -0
  675. package/dist/photo/receiptUi.d.ts +42 -0
  676. package/dist/photo/receiptUi.d.ts.map +1 -0
  677. package/dist/photo/receiptUi.js +147 -0
  678. package/dist/photo/receiptUi.js.map +1 -0
  679. package/dist/photo/routes.d.ts +10 -0
  680. package/dist/photo/routes.d.ts.map +1 -0
  681. package/dist/photo/routes.js +29 -0
  682. package/dist/photo/routes.js.map +1 -0
  683. package/dist/photo/store.d.ts +10 -0
  684. package/dist/photo/store.d.ts.map +1 -0
  685. package/dist/photo/store.js +44 -0
  686. package/dist/photo/store.js.map +1 -0
  687. package/dist/photo/templates.d.ts +4 -0
  688. package/dist/photo/templates.d.ts.map +1 -0
  689. package/dist/photo/templates.js +29 -0
  690. package/dist/photo/templates.js.map +1 -0
  691. package/dist/photo/viewerDoc.d.ts +5 -0
  692. package/dist/photo/viewerDoc.d.ts.map +1 -0
  693. package/dist/photo/viewerDoc.js +255 -0
  694. package/dist/photo/viewerDoc.js.map +1 -0
  695. package/dist/photo/wizard.d.ts +15 -0
  696. package/dist/photo/wizard.d.ts.map +1 -0
  697. package/dist/photo/wizard.js +25 -0
  698. package/dist/photo/wizard.js.map +1 -0
  699. package/dist/photo/wizardPort.d.ts +70 -0
  700. package/dist/photo/wizardPort.d.ts.map +1 -0
  701. package/dist/photo/wizardPort.js +232 -0
  702. package/dist/photo/wizardPort.js.map +1 -0
  703. package/dist/photo/wizardPortDocs.d.ts +6 -0
  704. package/dist/photo/wizardPortDocs.d.ts.map +1 -0
  705. package/dist/photo/wizardPortDocs.js +322 -0
  706. package/dist/photo/wizardPortDocs.js.map +1 -0
  707. package/dist/photo/wizardUi.d.ts +24 -0
  708. package/dist/photo/wizardUi.d.ts.map +1 -0
  709. package/dist/photo/wizardUi.js +101 -0
  710. package/dist/photo/wizardUi.js.map +1 -0
  711. package/dist/profile/commands.d.ts +32 -0
  712. package/dist/profile/commands.d.ts.map +1 -0
  713. package/dist/profile/commands.js +11 -0
  714. package/dist/profile/commands.js.map +1 -0
  715. package/dist/profile/index.d.ts +17 -0
  716. package/dist/profile/index.d.ts.map +1 -0
  717. package/dist/profile/index.js +17 -0
  718. package/dist/profile/index.js.map +1 -0
  719. package/dist/profile/labels.d.ts +10 -0
  720. package/dist/profile/labels.d.ts.map +1 -0
  721. package/dist/profile/labels.js +52 -0
  722. package/dist/profile/labels.js.map +1 -0
  723. package/dist/profile/read.d.ts +13 -0
  724. package/dist/profile/read.d.ts.map +1 -0
  725. package/dist/profile/read.js +24 -0
  726. package/dist/profile/read.js.map +1 -0
  727. package/dist/profile/receipt.d.ts +10 -0
  728. package/dist/profile/receipt.d.ts.map +1 -0
  729. package/dist/profile/receipt.js +19 -0
  730. package/dist/profile/receipt.js.map +1 -0
  731. package/dist/profile/routes.d.ts +8 -0
  732. package/dist/profile/routes.d.ts.map +1 -0
  733. package/dist/profile/routes.js +9 -0
  734. package/dist/profile/routes.js.map +1 -0
  735. package/dist/profile/setup.d.ts +26 -7
  736. package/dist/profile/setup.d.ts.map +1 -1
  737. package/dist/profile/setup.js +184 -78
  738. package/dist/profile/setup.js.map +1 -1
  739. package/dist/profile/update.d.ts +1 -1
  740. package/dist/profile/update.d.ts.map +1 -1
  741. package/dist/profile/update.js +33 -13
  742. package/dist/profile/update.js.map +1 -1
  743. package/dist/profile/view.d.ts +35 -4
  744. package/dist/profile/view.d.ts.map +1 -1
  745. package/dist/profile/view.js +132 -22
  746. package/dist/profile/view.js.map +1 -1
  747. package/dist/profile/write.d.ts +16 -0
  748. package/dist/profile/write.d.ts.map +1 -0
  749. package/dist/profile/write.js +75 -0
  750. package/dist/profile/write.js.map +1 -0
  751. package/dist/render/analysisPlate.d.ts +4 -4
  752. package/dist/render/analysisPlate.d.ts.map +1 -1
  753. package/dist/render/analysisPlate.js +5 -22
  754. package/dist/render/analysisPlate.js.map +1 -1
  755. package/dist/render/diet.d.ts +10 -6
  756. package/dist/render/diet.d.ts.map +1 -1
  757. package/dist/render/diet.js +8 -23
  758. package/dist/render/diet.js.map +1 -1
  759. package/dist/render/dietDocs.d.ts +19 -19
  760. package/dist/render/dietDocs.d.ts.map +1 -1
  761. package/dist/render/dietDocs.js +158 -457
  762. package/dist/render/dietDocs.js.map +1 -1
  763. package/dist/render/exercisePort.d.ts +4 -2
  764. package/dist/render/exercisePort.d.ts.map +1 -1
  765. package/dist/render/exercisePort.js +4 -3
  766. package/dist/render/exercisePort.js.map +1 -1
  767. package/dist/render/goalExtra.d.ts.map +1 -1
  768. package/dist/render/goalExtra.js +2 -1
  769. package/dist/render/goalExtra.js.map +1 -1
  770. package/dist/render/goalPlate.d.ts +2 -2
  771. package/dist/render/goalPlate.d.ts.map +1 -1
  772. package/dist/render/goalPlate.js +3 -3
  773. package/dist/render/goalPlate.js.map +1 -1
  774. package/dist/render/helpShell.d.ts +1 -1
  775. package/dist/render/helpShell.d.ts.map +1 -1
  776. package/dist/render/html.d.ts +34 -24
  777. package/dist/render/html.d.ts.map +1 -1
  778. package/dist/render/html.js +38 -88
  779. package/dist/render/html.js.map +1 -1
  780. package/dist/render/index.d.ts +34 -33
  781. package/dist/render/index.d.ts.map +1 -1
  782. package/dist/render/index.js +30 -18
  783. package/dist/render/index.js.map +1 -1
  784. package/dist/render/insightPlate.d.ts +17 -0
  785. package/dist/render/insightPlate.d.ts.map +1 -1
  786. package/dist/render/insightPlate.js +109 -1
  787. package/dist/render/insightPlate.js.map +1 -1
  788. package/dist/render/pageChromeCss.d.ts +24 -0
  789. package/dist/render/pageChromeCss.d.ts.map +1 -0
  790. package/dist/render/pageChromeCss.js +45 -0
  791. package/dist/render/pageChromeCss.js.map +1 -0
  792. package/dist/render/planCopyBlock.d.ts +32 -0
  793. package/dist/render/planCopyBlock.d.ts.map +1 -0
  794. package/dist/render/planCopyBlock.js +34 -0
  795. package/dist/render/planCopyBlock.js.map +1 -0
  796. package/dist/render/planEditor.d.ts +94 -0
  797. package/dist/render/planEditor.d.ts.map +1 -0
  798. package/dist/render/planEditor.js +38 -0
  799. package/dist/render/planEditor.js.map +1 -0
  800. package/dist/render/planEditorCss.d.ts +13 -0
  801. package/dist/render/planEditorCss.d.ts.map +1 -0
  802. package/dist/render/planEditorCss.js +140 -0
  803. package/dist/render/planEditorCss.js.map +1 -0
  804. package/dist/render/planEditorDocs.d.ts +7 -0
  805. package/dist/render/planEditorDocs.d.ts.map +1 -0
  806. package/dist/render/planEditorDocs.js +56 -0
  807. package/dist/render/planEditorDocs.js.map +1 -0
  808. package/dist/render/planEditorPort.d.ts +45 -0
  809. package/dist/render/planEditorPort.d.ts.map +1 -0
  810. package/dist/render/planEditorPort.js +217 -0
  811. package/dist/render/planEditorPort.js.map +1 -0
  812. package/dist/render/planEditorRuntime.d.ts +15 -0
  813. package/dist/render/planEditorRuntime.d.ts.map +1 -0
  814. package/dist/render/planEditorRuntime.js +427 -0
  815. package/dist/render/planEditorRuntime.js.map +1 -0
  816. package/dist/render/planPlate.d.ts +84 -4
  817. package/dist/render/planPlate.d.ts.map +1 -1
  818. package/dist/render/planPlate.js +155 -7
  819. package/dist/render/planPlate.js.map +1 -1
  820. package/dist/render/planWizardCss.d.ts +21 -0
  821. package/dist/render/planWizardCss.d.ts.map +1 -0
  822. package/dist/render/planWizardCss.js +121 -0
  823. package/dist/render/planWizardCss.js.map +1 -0
  824. package/dist/render/planWizardDocs.d.ts +8 -0
  825. package/dist/render/planWizardDocs.d.ts.map +1 -0
  826. package/dist/render/planWizardDocs.js +151 -0
  827. package/dist/render/planWizardDocs.js.map +1 -0
  828. package/dist/render/receipt.d.ts +1 -1
  829. package/dist/render/receipt.d.ts.map +1 -1
  830. package/dist/render/receipt.js +1 -1
  831. package/dist/render/receipt.js.map +1 -1
  832. package/dist/render/sportDocs.d.ts +17 -12
  833. package/dist/render/sportDocs.d.ts.map +1 -1
  834. package/dist/render/sportDocs.js +370 -525
  835. package/dist/render/sportDocs.js.map +1 -1
  836. package/dist/render/sportPortDocs.d.ts +3 -2
  837. package/dist/render/sportPortDocs.d.ts.map +1 -1
  838. package/dist/render/sportPortDocs.js +810 -389
  839. package/dist/render/sportPortDocs.js.map +1 -1
  840. package/dist/render/trendDocs.d.ts +16 -6
  841. package/dist/render/trendDocs.d.ts.map +1 -1
  842. package/dist/render/trendDocs.js +293 -252
  843. package/dist/render/trendDocs.js.map +1 -1
  844. package/dist/render/trendMiscPort.d.ts +9 -24
  845. package/dist/render/trendMiscPort.d.ts.map +1 -1
  846. package/dist/render/trendMiscPort.js +13 -34
  847. package/dist/render/trendMiscPort.js.map +1 -1
  848. package/dist/render/trendMiscPortDocs.d.ts +1 -2
  849. package/dist/render/trendMiscPortDocs.d.ts.map +1 -1
  850. package/dist/render/trendMiscPortDocs.js +256 -107
  851. package/dist/render/trendMiscPortDocs.js.map +1 -1
  852. package/dist/render/trendPredictDocs.d.ts +16 -0
  853. package/dist/render/trendPredictDocs.d.ts.map +1 -0
  854. package/dist/render/trendPredictDocs.js +1131 -0
  855. package/dist/render/trendPredictDocs.js.map +1 -0
  856. package/dist/render/wizardPort.d.ts +9 -62
  857. package/dist/render/wizardPort.d.ts.map +1 -1
  858. package/dist/render/wizardPort.js +20 -180
  859. package/dist/render/wizardPort.js.map +1 -1
  860. package/dist/render/wizardPortDocs.d.ts +5 -5
  861. package/dist/render/wizardPortDocs.d.ts.map +1 -1
  862. package/dist/render/wizardPortDocs.js +273 -215
  863. package/dist/render/wizardPortDocs.js.map +1 -1
  864. package/dist/render/workoutMovementTable.d.ts +10 -0
  865. package/dist/render/workoutMovementTable.d.ts.map +1 -0
  866. package/dist/render/workoutMovementTable.js +153 -0
  867. package/dist/render/workoutMovementTable.js.map +1 -0
  868. package/dist/render/workoutPlanCss.d.ts +15 -0
  869. package/dist/render/workoutPlanCss.d.ts.map +1 -0
  870. package/dist/render/workoutPlanCss.js +217 -0
  871. package/dist/render/workoutPlanCss.js.map +1 -0
  872. package/dist/render/workoutPlanDocs.d.ts +23 -0
  873. package/dist/render/workoutPlanDocs.d.ts.map +1 -0
  874. package/dist/render/workoutPlanDocs.js +244 -0
  875. package/dist/render/workoutPlanDocs.js.map +1 -0
  876. package/dist/render/workoutPlanLook.d.ts +16 -0
  877. package/dist/render/workoutPlanLook.d.ts.map +1 -0
  878. package/dist/render/workoutPlanLook.js +135 -0
  879. package/dist/render/workoutPlanLook.js.map +1 -0
  880. package/dist/shared/alive.d.ts +22 -0
  881. package/dist/shared/alive.d.ts.map +1 -0
  882. package/dist/shared/alive.js +22 -0
  883. package/dist/shared/alive.js.map +1 -0
  884. package/dist/shared/commandSpec.d.ts +83 -0
  885. package/dist/shared/commandSpec.d.ts.map +1 -0
  886. package/dist/shared/commandSpec.js +2 -0
  887. package/dist/shared/commandSpec.js.map +1 -0
  888. package/dist/shared/conclusionLine.d.ts +3 -0
  889. package/dist/shared/conclusionLine.d.ts.map +1 -0
  890. package/dist/shared/conclusionLine.js +21 -0
  891. package/dist/shared/conclusionLine.js.map +1 -0
  892. package/dist/shared/contentSuffix.d.ts +17 -0
  893. package/dist/shared/contentSuffix.d.ts.map +1 -0
  894. package/dist/shared/contentSuffix.js +125 -0
  895. package/dist/shared/contentSuffix.js.map +1 -0
  896. package/dist/shared/copyArea.d.ts +30 -11
  897. package/dist/shared/copyArea.d.ts.map +1 -1
  898. package/dist/shared/copyArea.js +68 -13
  899. package/dist/shared/copyArea.js.map +1 -1
  900. package/dist/shared/copyBlock.d.ts +4 -0
  901. package/dist/shared/copyBlock.d.ts.map +1 -0
  902. package/dist/shared/copyBlock.js +26 -0
  903. package/dist/shared/copyBlock.js.map +1 -0
  904. package/dist/shared/docPage.d.ts +26 -4
  905. package/dist/shared/docPage.d.ts.map +1 -1
  906. package/dist/shared/docPage.js +84 -10
  907. package/dist/shared/docPage.js.map +1 -1
  908. package/dist/shared/emptyGuide.d.ts +9 -0
  909. package/dist/shared/emptyGuide.d.ts.map +1 -0
  910. package/dist/shared/emptyGuide.js +31 -0
  911. package/dist/shared/emptyGuide.js.map +1 -0
  912. package/dist/shared/fieldLabel.d.ts +5 -0
  913. package/dist/shared/fieldLabel.d.ts.map +1 -0
  914. package/dist/shared/fieldLabel.js +42 -0
  915. package/dist/shared/fieldLabel.js.map +1 -0
  916. package/dist/shared/healthRate.d.ts +21 -0
  917. package/dist/shared/healthRate.d.ts.map +1 -0
  918. package/dist/shared/healthRate.js +21 -0
  919. package/dist/shared/healthRate.js.map +1 -0
  920. package/dist/shared/kcalPerKg.d.ts +16 -0
  921. package/dist/shared/kcalPerKg.d.ts.map +1 -0
  922. package/dist/shared/kcalPerKg.js +16 -0
  923. package/dist/shared/kcalPerKg.js.map +1 -0
  924. package/dist/shared/meal.d.ts +46 -0
  925. package/dist/shared/meal.d.ts.map +1 -0
  926. package/dist/shared/meal.js +75 -0
  927. package/dist/shared/meal.js.map +1 -0
  928. package/dist/shared/nutritionRange.d.ts +28 -0
  929. package/dist/shared/nutritionRange.d.ts.map +1 -0
  930. package/dist/shared/nutritionRange.js +28 -0
  931. package/dist/shared/nutritionRange.js.map +1 -0
  932. package/dist/shared/operationHead.d.ts +21 -0
  933. package/dist/shared/operationHead.d.ts.map +1 -0
  934. package/dist/shared/operationHead.js +73 -0
  935. package/dist/shared/operationHead.js.map +1 -0
  936. package/dist/shared/pageKit.d.ts +25 -0
  937. package/dist/shared/pageKit.d.ts.map +1 -0
  938. package/dist/shared/pageKit.js +56 -0
  939. package/dist/shared/pageKit.js.map +1 -0
  940. package/dist/shared/pageStrips.d.ts +81 -0
  941. package/dist/shared/pageStrips.d.ts.map +1 -0
  942. package/dist/shared/pageStrips.js +166 -0
  943. package/dist/shared/pageStrips.js.map +1 -0
  944. package/dist/shared/params.d.ts +54 -0
  945. package/dist/shared/params.d.ts.map +1 -0
  946. package/dist/shared/params.js +176 -0
  947. package/dist/shared/params.js.map +1 -0
  948. package/dist/shared/planCopyBlock.d.ts +32 -0
  949. package/dist/shared/planCopyBlock.d.ts.map +1 -0
  950. package/dist/shared/planCopyBlock.js +34 -0
  951. package/dist/shared/planCopyBlock.js.map +1 -0
  952. package/dist/shared/receiptParts.d.ts +9 -0
  953. package/dist/shared/receiptParts.d.ts.map +1 -0
  954. package/dist/shared/receiptParts.js +40 -0
  955. package/dist/shared/receiptParts.js.map +1 -0
  956. package/dist/shared/sceneEnvelope.d.ts +32 -0
  957. package/dist/shared/sceneEnvelope.d.ts.map +1 -0
  958. package/dist/shared/sceneEnvelope.js +12 -0
  959. package/dist/shared/sceneEnvelope.js.map +1 -0
  960. package/dist/shared/sourceLine.d.ts +10 -0
  961. package/dist/shared/sourceLine.d.ts.map +1 -0
  962. package/dist/shared/sourceLine.js +39 -0
  963. package/dist/shared/sourceLine.js.map +1 -0
  964. package/dist/shared/time.d.ts +28 -0
  965. package/dist/shared/time.d.ts.map +1 -0
  966. package/dist/shared/time.js +37 -0
  967. package/dist/shared/time.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 +24 -0
  1015. package/dist/weight/commands.d.ts.map +1 -0
  1016. package/dist/weight/commands.js +19 -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 +221 -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 +21 -0
  1039. package/dist/weight/index.d.ts.map +1 -0
  1040. package/dist/weight/index.js +20 -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 +212 -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 +126 -0
  1095. package/dist/weight/weightUi.d.ts.map +1 -0
  1096. package/dist/weight/weightUi.js +226 -0
  1097. package/dist/weight/weightUi.js.map +1 -0
  1098. package/dist/workout/commands.d.ts +43 -0
  1099. package/dist/workout/commands.d.ts.map +1 -0
  1100. package/dist/workout/commands.js +36 -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 +21 -0
  1115. package/dist/workout/index.d.ts.map +1 -0
  1116. package/dist/workout/index.js +20 -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 +62 -0
  1123. package/dist/workout/landBatch.d.ts.map +1 -0
  1124. package/dist/workout/landBatch.js +227 -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 +111 -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 +132 -0
  1133. package/dist/workout/landPages.js.map +1 -0
  1134. package/dist/workout/landRunner.d.ts +40 -0
  1135. package/dist/workout/landRunner.d.ts.map +1 -0
  1136. package/dist/workout/landRunner.js +134 -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/planCopyBlock.d.ts +9 -0
  1147. package/dist/workout/planCopyBlock.d.ts.map +1 -0
  1148. package/dist/workout/planCopyBlock.js +9 -0
  1149. package/dist/workout/planCopyBlock.js.map +1 -0
  1150. package/dist/workout/planEditor.d.ts +94 -0
  1151. package/dist/workout/planEditor.d.ts.map +1 -0
  1152. package/dist/workout/planEditor.js +38 -0
  1153. package/dist/workout/planEditor.js.map +1 -0
  1154. package/dist/workout/planEditorCss.d.ts +13 -0
  1155. package/dist/workout/planEditorCss.d.ts.map +1 -0
  1156. package/dist/workout/planEditorCss.js +140 -0
  1157. package/dist/workout/planEditorCss.js.map +1 -0
  1158. package/dist/workout/planEditorDocs.d.ts +7 -0
  1159. package/dist/workout/planEditorDocs.d.ts.map +1 -0
  1160. package/dist/workout/planEditorDocs.js +56 -0
  1161. package/dist/workout/planEditorDocs.js.map +1 -0
  1162. package/dist/workout/planEditorPort.d.ts +45 -0
  1163. package/dist/workout/planEditorPort.d.ts.map +1 -0
  1164. package/dist/workout/planEditorPort.js +217 -0
  1165. package/dist/workout/planEditorPort.js.map +1 -0
  1166. package/dist/workout/planEditorRuntime.d.ts +15 -0
  1167. package/dist/workout/planEditorRuntime.d.ts.map +1 -0
  1168. package/dist/workout/planEditorRuntime.js +427 -0
  1169. package/dist/workout/planEditorRuntime.js.map +1 -0
  1170. package/dist/workout/planStore.d.ts +157 -0
  1171. package/dist/workout/planStore.d.ts.map +1 -0
  1172. package/dist/workout/planStore.js +280 -0
  1173. package/dist/workout/planStore.js.map +1 -0
  1174. package/dist/workout/precheckPrompt.d.ts +7 -0
  1175. package/dist/workout/precheckPrompt.d.ts.map +1 -0
  1176. package/dist/workout/precheckPrompt.js +35 -0
  1177. package/dist/workout/precheckPrompt.js.map +1 -0
  1178. package/dist/workout/progress.d.ts +12 -0
  1179. package/dist/workout/progress.d.ts.map +1 -0
  1180. package/dist/workout/progress.js +16 -0
  1181. package/dist/workout/progress.js.map +1 -0
  1182. package/dist/workout/receipt.d.ts +15 -0
  1183. package/dist/workout/receipt.d.ts.map +1 -0
  1184. package/dist/workout/receipt.js +128 -0
  1185. package/dist/workout/receipt.js.map +1 -0
  1186. package/dist/workout/review.d.ts +12 -0
  1187. package/dist/workout/review.d.ts.map +1 -0
  1188. package/dist/workout/review.js +15 -0
  1189. package/dist/workout/review.js.map +1 -0
  1190. package/dist/workout/reviewDocs.d.ts +3 -0
  1191. package/dist/workout/reviewDocs.d.ts.map +1 -0
  1192. package/dist/workout/reviewDocs.js +222 -0
  1193. package/dist/workout/reviewDocs.js.map +1 -0
  1194. package/dist/workout/reviewDocsCss.d.ts +5 -0
  1195. package/dist/workout/reviewDocsCss.d.ts.map +1 -0
  1196. package/dist/workout/reviewDocsCss.js +128 -0
  1197. package/dist/workout/reviewDocsCss.js.map +1 -0
  1198. package/dist/workout/routes.d.ts +13 -0
  1199. package/dist/workout/routes.d.ts.map +1 -0
  1200. package/dist/workout/routes.js +49 -0
  1201. package/dist/workout/routes.js.map +1 -0
  1202. package/dist/workout/wizard.d.ts +14 -0
  1203. package/dist/workout/wizard.d.ts.map +1 -0
  1204. package/dist/workout/wizard.js +20 -0
  1205. package/dist/workout/wizard.js.map +1 -0
  1206. package/dist/workout/write.d.ts +78 -0
  1207. package/dist/workout/write.d.ts.map +1 -0
  1208. package/dist/workout/write.js +607 -0
  1209. package/dist/workout/write.js.map +1 -0
  1210. package/dist/workout/xunjiBackfill.d.ts +36 -0
  1211. package/dist/workout/xunjiBackfill.d.ts.map +1 -0
  1212. package/dist/workout/xunjiBackfill.js +177 -0
  1213. package/dist/workout/xunjiBackfill.js.map +1 -0
  1214. package/dist/workout/xunjiPush.d.ts +33 -0
  1215. package/dist/workout/xunjiPush.d.ts.map +1 -0
  1216. package/dist/workout/xunjiPush.js +215 -0
  1217. package/dist/workout/xunjiPush.js.map +1 -0
  1218. package/dist/workout/xunjiRunner.d.ts +35 -0
  1219. package/dist/workout/xunjiRunner.d.ts.map +1 -0
  1220. package/dist/workout/xunjiRunner.js +110 -0
  1221. package/dist/workout/xunjiRunner.js.map +1 -0
  1222. package/dist/xunji/backfill.d.ts +65 -0
  1223. package/dist/xunji/backfill.d.ts.map +1 -0
  1224. package/dist/xunji/backfill.js +156 -0
  1225. package/dist/xunji/backfill.js.map +1 -0
  1226. package/dist/xunji/catalog.d.ts +55 -0
  1227. package/dist/xunji/catalog.d.ts.map +1 -0
  1228. package/dist/xunji/catalog.js +132 -0
  1229. package/dist/xunji/catalog.js.map +1 -0
  1230. package/dist/xunji/cli.d.ts +3 -0
  1231. package/dist/xunji/cli.d.ts.map +1 -0
  1232. package/dist/xunji/cli.js +15 -0
  1233. package/dist/xunji/cli.js.map +1 -0
  1234. package/dist/xunji/exitMap.d.ts +37 -0
  1235. package/dist/xunji/exitMap.d.ts.map +1 -0
  1236. package/dist/xunji/exitMap.js +42 -0
  1237. package/dist/xunji/exitMap.js.map +1 -0
  1238. package/dist/xunji/fetch.d.ts +76 -0
  1239. package/dist/xunji/fetch.d.ts.map +1 -0
  1240. package/dist/xunji/fetch.js +159 -0
  1241. package/dist/xunji/fetch.js.map +1 -0
  1242. package/dist/xunji/index.d.ts +21 -0
  1243. package/dist/xunji/index.d.ts.map +1 -0
  1244. package/dist/xunji/index.js +18 -0
  1245. package/dist/xunji/index.js.map +1 -0
  1246. package/dist/xunji/key.d.ts +37 -0
  1247. package/dist/xunji/key.d.ts.map +1 -0
  1248. package/dist/xunji/key.js +100 -0
  1249. package/dist/xunji/key.js.map +1 -0
  1250. package/dist/xunji/overlay-plan.d.ts +79 -0
  1251. package/dist/xunji/overlay-plan.d.ts.map +1 -0
  1252. package/dist/xunji/overlay-plan.js +145 -0
  1253. package/dist/xunji/overlay-plan.js.map +1 -0
  1254. package/dist/xunji/planSource.d.ts +40 -0
  1255. package/dist/xunji/planSource.d.ts.map +1 -0
  1256. package/dist/xunji/planSource.js +78 -0
  1257. package/dist/xunji/planSource.js.map +1 -0
  1258. package/dist/xunji/push.d.ts +55 -0
  1259. package/dist/xunji/push.d.ts.map +1 -0
  1260. package/dist/xunji/push.js +69 -0
  1261. package/dist/xunji/push.js.map +1 -0
  1262. package/dist/xunji/rateLimit.d.ts +49 -0
  1263. package/dist/xunji/rateLimit.d.ts.map +1 -0
  1264. package/dist/xunji/rateLimit.js +108 -0
  1265. package/dist/xunji/rateLimit.js.map +1 -0
  1266. package/dist/xunji/request.d.ts +48 -0
  1267. package/dist/xunji/request.d.ts.map +1 -0
  1268. package/dist/xunji/request.js +60 -0
  1269. package/dist/xunji/request.js.map +1 -0
  1270. package/dist/xunji/retry.d.ts +50 -0
  1271. package/dist/xunji/retry.d.ts.map +1 -0
  1272. package/dist/xunji/retry.js +106 -0
  1273. package/dist/xunji/retry.js.map +1 -0
  1274. package/dist/xunji/rows.d.ts +32 -0
  1275. package/dist/xunji/rows.d.ts.map +1 -0
  1276. package/dist/xunji/rows.js +74 -0
  1277. package/dist/xunji/rows.js.map +1 -0
  1278. package/dist/xunji/run-sync.d.ts +106 -0
  1279. package/dist/xunji/run-sync.d.ts.map +1 -0
  1280. package/dist/xunji/run-sync.js +223 -0
  1281. package/dist/xunji/run-sync.js.map +1 -0
  1282. package/dist/xunji/run.d.ts +54 -0
  1283. package/dist/xunji/run.d.ts.map +1 -0
  1284. package/dist/xunji/run.js +300 -0
  1285. package/dist/xunji/run.js.map +1 -0
  1286. package/dist/xunji/store.d.ts +31 -0
  1287. package/dist/xunji/store.d.ts.map +1 -0
  1288. package/dist/xunji/store.js +60 -0
  1289. package/dist/xunji/store.js.map +1 -0
  1290. package/dist/xunji/subcommands.d.ts +64 -0
  1291. package/dist/xunji/subcommands.d.ts.map +1 -0
  1292. package/dist/xunji/subcommands.js +202 -0
  1293. package/dist/xunji/subcommands.js.map +1 -0
  1294. package/dist/xunji/upsert.d.ts +61 -0
  1295. package/dist/xunji/upsert.d.ts.map +1 -0
  1296. package/dist/xunji/upsert.js +100 -0
  1297. package/dist/xunji/upsert.js.map +1 -0
  1298. package/package.json +6 -9
  1299. 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
  1300. package/templates/help.html +1 -1
  1301. package/workflows/08-/350/272/253/344/275/223/347/273/206/350/212/202.md +60 -0
  1302. package/workflows/09-/350/272/253/346/235/220/347/205/247/347/211/207.md +98 -0
@@ -0,0 +1,232 @@
1
+ import { listPhotos } from './photos.js';
2
+ import { toCard } from './photo.js';
3
+ import { CalorieRenderError } from '../render/errors.js';
4
+ const ISO_RE = /^\d{4}-\d{2}-\d{2}$/;
5
+ function assertISO(v, field) {
6
+ if (!ISO_RE.test(v) || Number.isNaN(Date.parse(v + 'T12:00:00Z'))) {
7
+ throw new CalorieRenderError('bad-input', field + ' 非法(须 YYYY-MM-DD):' + v);
8
+ }
9
+ }
10
+ function numOrUndef(raw, field) {
11
+ if (raw === undefined || raw === null || raw === '')
12
+ return undefined;
13
+ const n = typeof raw === 'number' ? raw : Number(String(raw).trim());
14
+ if (!Number.isFinite(n))
15
+ throw new CalorieRenderError('bad-input', '参数 ' + field + ' 须为 number:' + String(raw));
16
+ return n;
17
+ }
18
+ function strOrUndef(raw, field) {
19
+ if (raw === undefined || raw === null)
20
+ return undefined;
21
+ if (typeof raw !== 'string')
22
+ throw new CalorieRenderError('bad-input', '参数 ' + field + ' 须为字符串');
23
+ const s = raw.trim();
24
+ return s === '' ? undefined : s;
25
+ }
26
+ /* ── 身体两页已迁出(#353):记围度/记体脂的视图与 prompt 原样迁入 src/body/wizardPlate.ts,本件只留身材照/GIF。 */
27
+ /* ── 3. 记身材照 wizard(body_photo_log_wizard.html 复刻,纯配置不读库) ── */
28
+ export const PHOTO_LOG_TAGS = ['正面', '背面', '侧面', '正面自然光', '正面灯光', '手臂', '腹部', '腿部'];
29
+ function normSrcPaths(raw) {
30
+ if (raw === undefined || raw === null)
31
+ return [];
32
+ const arr = Array.isArray(raw) ? raw : [raw];
33
+ const out = [];
34
+ for (const s of arr) {
35
+ if (typeof s !== 'string' || s.trim() === '') {
36
+ throw new CalorieRenderError('bad-input', '参数 srcPaths 须为照片路径字符串数组');
37
+ }
38
+ out.push(s.trim());
39
+ }
40
+ if (out.length > 20)
41
+ throw new CalorieRenderError('bad-input', 'srcPaths 至多 20 张');
42
+ return out;
43
+ }
44
+ export function buildPhotoLogWizardPrompt(srcPaths, tag, note) {
45
+ // #474:两处缺项占位句去参数名、说人话(用户看不出 `srcPaths`/`tag` 指的是哪一栏)。
46
+ if (srcPaths.length === 0)
47
+ return '// 还没填照片路径:把照片的完整路径粘到上面那一栏(最多 20 张)';
48
+ if (!tag)
49
+ return '// 还没填标签:从上面的常用标签里点一个(同一类照片用同一个)';
50
+ const files = srcPaths.map((f) => '"' + f + '"').join(' ');
51
+ const params = { srcPaths, tag, ...(note ? { note } : {}) };
52
+ return '请帮我记录 ' + srcPaths.length + ' 张身材照到卡路里\n\n参数:\n- 照片文件:' + files +
53
+ '\n- tag:' + tag + (note ? '\n- 备注:' + note : '') +
54
+ '\n\n命令:\n```bash\ncalorie-cmd-read calorie.photo.add --params \'' + JSON.stringify(params) + '\'\n```\n\n完成后返回写库回执。';
55
+ }
56
+ export function buildPhotoLogWizardView(raw) {
57
+ const allowed = new Set(['srcPaths', 'srcPath', 'tag', 'note', 'key']);
58
+ for (const k of Object.keys(raw)) {
59
+ if (!allowed.has(k))
60
+ throw new CalorieRenderError('bad-input', '不支持字段: ' + k);
61
+ }
62
+ const srcPaths = normSrcPaths(raw['srcPaths'] ?? raw['srcPath']);
63
+ const tagRaw = strOrUndef(raw['tag'], 'tag');
64
+ if (tagRaw !== undefined && tagRaw.length > 20)
65
+ throw new CalorieRenderError('bad-input', '参数 tag 至多 20 字符');
66
+ const tag = tagRaw ?? null;
67
+ const note = strOrUndef(raw['note'], 'note') ?? null;
68
+ return { srcPaths, tag, note, prompt: buildPhotoLogWizardPrompt(srcPaths, tag, note) };
69
+ }
70
+ /* ── 4. GIF 框选器(body_photo_gif_planner.html 复刻,无 cropper.js) ── */
71
+ /** 过渡效果的中文词(#474):表单下拉的 `option` 文本与 prompt 里的「- 过渡:」共用这一份,
72
+ * 两处不许走散;**机器值仍是 `cut/fade/dissolve`**(命令段与校验口径一字未改)。 */
73
+ export function transitionText(transition) {
74
+ const map = { cut: '硬切', fade: '淡入淡出', dissolve: '溶解' };
75
+ return map[transition] ?? transition;
76
+ }
77
+ function normIdList(raw, field) {
78
+ if (raw === undefined || raw === null)
79
+ return [];
80
+ const arr = Array.isArray(raw) ? raw : String(raw).split(',').map((s) => s.trim()).filter(Boolean);
81
+ const out = [];
82
+ for (const v of arr) {
83
+ const n = typeof v === 'number' ? v : Number(String(v).trim());
84
+ if (!Number.isInteger(n) || n <= 0)
85
+ throw new CalorieRenderError('bad-input', '参数 ' + field + ' 须为正整数 id 数组');
86
+ out.push(n);
87
+ }
88
+ return out;
89
+ }
90
+ function normCrops(raw) {
91
+ if (raw === undefined || raw === null || raw === '')
92
+ return {};
93
+ let obj;
94
+ if (typeof raw === 'string') {
95
+ try {
96
+ obj = JSON.parse(raw);
97
+ }
98
+ catch {
99
+ throw new CalorieRenderError('bad-input', '参数 crops 须为 JSON 对象 {id:[x1,y1,x2,y2]}');
100
+ }
101
+ }
102
+ else if (typeof raw === 'object' && !Array.isArray(raw)) {
103
+ obj = raw;
104
+ }
105
+ else {
106
+ throw new CalorieRenderError('bad-input', '参数 crops 须为 JSON 对象 {id:[x1,y1,x2,y2]}');
107
+ }
108
+ const out = {};
109
+ for (const [id, box] of Object.entries(obj)) {
110
+ if (!Array.isArray(box) || box.length !== 4 || !box.every((n) => typeof n === 'number' && Number.isFinite(n))) {
111
+ throw new CalorieRenderError('bad-input', '参数 crops[' + id + '] 须为 [x1,y1,x2,y2] 四数字');
112
+ }
113
+ const [x1, y1, x2, y2] = box;
114
+ if (!(x2 > x1 && y2 > y1)) {
115
+ throw new CalorieRenderError('bad-input', '参数 crops[' + id + '] 须满足 x2>x1 且 y2>y1');
116
+ }
117
+ out[id] = [x1, y1, x2, y2];
118
+ }
119
+ return out;
120
+ }
121
+ export function buildGifPlannerPrompt(v) {
122
+ if (v.selectedIds.length === 0)
123
+ return '// 未选中任何照片(先按 tag 列出,再给 photoIds 框选)';
124
+ const lines = [];
125
+ lines.push('请帮我生成身材变化 GIF');
126
+ lines.push('');
127
+ lines.push('参数:');
128
+ lines.push('- 已选 ' + v.selectedIds.length + ' 张(按顺序):ID = ' + v.selectedIds.join(' '));
129
+ const cropIds = v.selectedIds.filter((id) => v.crops[String(id)]);
130
+ if (cropIds.length > 0) {
131
+ lines.push('- 裁剪(每张单独):');
132
+ for (const id of cropIds) {
133
+ const [x1, y1, x2, y2] = v.crops[String(id)];
134
+ lines.push(' ' + id + ': (' + x1 + ', ' + y1 + ') ' + (x2 - x1) + '×' + (y2 - y1) + ' → 即 (' + x1 + ', ' + y1 + ', ' + x2 + ', ' + y2 + ')');
135
+ }
136
+ }
137
+ else {
138
+ lines.push('- 裁剪:无(整图)');
139
+ }
140
+ lines.push('- 速度:' + v.duration + 'ms/帧');
141
+ lines.push('- 循环:' + (v.loop === 0 ? '无限循环' : v.loop + ' 次循环'));
142
+ lines.push('- 尺寸:' + v.width + '×' + v.height);
143
+ if (v.watermark)
144
+ lines.push('- 水印:"' + v.watermark + '"');
145
+ // #474(审查整改 2)·「指令与下拉用同一个词」:这里落**下拉选项文本**(硬切/淡入淡出/溶解),
146
+ // 与表单所见同一份词(`transitionText` 是两处唯一的措辞出处)。
147
+ // 机器面一字未改:命令段 `--params` 与表单 `option value` 仍是 `cut`/`fade`/`dissolve`——
148
+ // 参数字符串才是程序读的那面,`- 过渡:` 这行是给读者看的。
149
+ lines.push('- 过渡:' + transitionText(v.transition));
150
+ if (v.output)
151
+ lines.push('- 输出:' + v.output);
152
+ lines.push('');
153
+ lines.push('命令:');
154
+ lines.push('```bash');
155
+ const gifParams = { tag: v.tag ?? '正面' };
156
+ lines.push('calorie-cmd-read calorie.photo.gif --params \'' + JSON.stringify(gifParams) + '\'');
157
+ lines.push('```');
158
+ lines.push('');
159
+ lines.push('完成后用浏览器打开生成的 GIF 文件让用户确认。');
160
+ return lines.join('\n');
161
+ }
162
+ export function buildGifPlannerView(db, raw, photosDir) {
163
+ const allowed = new Set([
164
+ 'tag', 'start', 'end', 'days', 'photoIds', 'ids', 'crops',
165
+ 'duration', 'loop', 'width', 'height', 'watermark', 'transition', 'output', 'photosDir', 'key',
166
+ ]);
167
+ for (const k of Object.keys(raw)) {
168
+ if (!allowed.has(k))
169
+ throw new CalorieRenderError('bad-input', '不支持字段: ' + k);
170
+ }
171
+ const tag = strOrUndef(raw['tag'], 'tag') ?? null;
172
+ const start = strOrUndef(raw['start'], 'start');
173
+ if (start !== undefined)
174
+ assertISO(start, 'start');
175
+ const end = strOrUndef(raw['end'], 'end');
176
+ if (end !== undefined)
177
+ assertISO(end, 'end');
178
+ if (start !== undefined && end !== undefined && start > end) {
179
+ throw new CalorieRenderError('bad-input', 'start 不得晚于 end');
180
+ }
181
+ const daysRaw = numOrUndef(raw['days'], 'days');
182
+ const days = daysRaw === undefined ? 365 : Math.trunc(daysRaw);
183
+ if (!Number.isInteger(days) || days < 1 || days > 36500)
184
+ throw new CalorieRenderError('bad-input', 'days 须为 1..36500 整数');
185
+ const durationRaw = numOrUndef(raw['duration'], 'duration');
186
+ const duration = durationRaw === undefined ? 500 : Math.trunc(durationRaw);
187
+ if (duration < 50 || duration > 5000)
188
+ throw new CalorieRenderError('bad-input', 'duration 须为 50..5000 毫秒');
189
+ const loopRaw = numOrUndef(raw['loop'], 'loop');
190
+ const loop = loopRaw === undefined ? 0 : Math.trunc(loopRaw);
191
+ if (![0, 1, 3, 5].includes(loop))
192
+ throw new CalorieRenderError('bad-input', 'loop 须为 0/1/3/5(0=无限)');
193
+ const widthRaw = numOrUndef(raw['width'], 'width');
194
+ const width = widthRaw === undefined ? 400 : Math.trunc(widthRaw);
195
+ if (width < 100 || width > 2000)
196
+ throw new CalorieRenderError('bad-input', 'width 须为 100..2000 像素');
197
+ const heightRaw = numOrUndef(raw['height'], 'height');
198
+ const height = heightRaw === undefined ? 600 : Math.trunc(heightRaw);
199
+ if (height < 100 || height > 2000)
200
+ throw new CalorieRenderError('bad-input', 'height 须为 100..2000 像素');
201
+ const watermark = strOrUndef(raw['watermark'], 'watermark') ?? null;
202
+ const transition = strOrUndef(raw['transition'], 'transition') ?? 'cut';
203
+ if (!['cut', 'fade', 'dissolve'].includes(transition)) {
204
+ throw new CalorieRenderError('bad-input', 'transition 须为 cut/fade/dissolve');
205
+ }
206
+ const output = strOrUndef(raw['output'], 'output') ?? null;
207
+ const crops = normCrops(raw['crops']);
208
+ const wanted = normIdList(raw['photoIds'] ?? raw['ids'], 'photoIds');
209
+ const rows = listPhotos(db, {
210
+ ...(tag ? { tag } : {}),
211
+ ...(start !== undefined || end !== undefined ? { dateFrom: start ?? null, dateTo: end ?? null } : { days }),
212
+ limit: 100,
213
+ });
214
+ const byId = new Map(rows.map((r) => [r.id, r]));
215
+ const photos = rows.map((r) => {
216
+ const card = toCard(r, photosDir ?? null);
217
+ const crop = crops[String(r.id)] ?? null;
218
+ return {
219
+ id: r.id, date: r.date, tagList: [...r.tag_list], photoPath: card.photoPath,
220
+ fileExists: card.fileExists, selected: wanted.length === 0 ? true : wanted.includes(r.id), crop,
221
+ };
222
+ });
223
+ const missingIds = wanted.filter((id) => !byId.has(id));
224
+ const selectedIds = photos.filter((p) => p.selected).map((p) => p.id);
225
+ const view = {
226
+ tag, photos, selectedIds, missingIds,
227
+ duration, loop, width, height, watermark, transition, output, prompt: '',
228
+ };
229
+ view.prompt = buildGifPlannerPrompt({ selectedIds, crops, duration, loop, width, height, watermark, transition, output, tag });
230
+ return view;
231
+ }
232
+ //# sourceMappingURL=wizardPort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizardPort.js","sourceRoot":"","sources":["../../src/photo/wizardPort.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { GifPlannerView, PhotoLogWizardView } from './wizardPort.js';
2
+ /** #654:`command`=本次命令原文(命令层 `photo/wizard.ts` 的 `commandLine()` 派生),进复制日志第 4 段。 */
3
+ export declare function buildPhotoLogWizardDoc(v: PhotoLogWizardView, command: string): string;
4
+ /** #654:`command`=本次命令原文(命令层 `photo/wizard.ts` 的 `commandLine()` 派生),进复制日志第 4 段。 */
5
+ export declare function buildGifPlannerDoc(v: GifPlannerView, command: string): string;
6
+ //# sourceMappingURL=wizardPortDocs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizardPortDocs.d.ts","sourceRoot":"","sources":["../../src/photo/wizardPortDocs.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAyEzB,oFAAoF;AACpF,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA8DrF;AAmHD,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA+D7E"}
@@ -0,0 +1,322 @@
1
+ /** #86 · wizard 身材照/GIF 两页 HTML 填充器(D1 静态 HTML + copyText)。
2
+ *(#353 后:记围度/记体脂两页已迁入 `src/body/wizardDocs.ts`,本件只留两页。)
3
+ *
4
+ * 包裹约定(沿 #111/#112/#113,不新增):
5
+ * sharedCss = buildStyleSheet().css + blocksCss(),不走 extraCss;
6
+ * 复制文本 metrics 块一律 buildDataText(#77 契约):stat 投影只收确定数字。
7
+ * 用户路径的复制=prompt 预览(renderPreBlock)+复制按钮(render/copy.ts 的
8
+ * copyActionHtml,走 Base P0 双通道,禁本地改写)——旧模板 btn-copy+copyText
9
+ * 的新架构同形(B-11 复制区;行为归宿主 B7,本层零 JS)。
10
+ * 表单=renderParamForm 预填值(B-09 静态 label+input,零 JS;无 select 控件,
11
+ * 来源/性别等以下拉候选写进 hint,B7 边界)。
12
+ * 本层不做取数(数据由 photo/wizardPort.ts 备齐),空库不返空页(recent 为空即空态行)。
13
+ *
14
+ * #655(负责人验收打回「两页很丑陋」)把这两页从「名+空框+灰示例」的三层空表单改成**确认清单**:
15
+ * 值先以只读一行上屏、点开哪一行才出哪一行的输入(形状与样式住姊妹件 `photo/wizardUi.ts`),
16
+ * 三档层级与块间分割由本件与本族页内件定;两页一并补上 `pageUi: true`(#525 的页面级移动端配方,
17
+ * 本族另外七页都在用、只有本件两页漏了——`renderFactStrip` 的形状样式与宽屏 1280 版式都挂在它下面)。
18
+ *
19
+ * **#654(读页复制日志 · 本席位)**:两页底部 ghost 行补回**真**「复制日志」——本件两页以前只有
20
+ * `dataCopyArea`(只出数据那颗),日志那颗靠公共层 #336 兜底补的禁用占位(#654 已撤那条兜底路径)。
21
+ * 现在两页自己给:`copyArea({ data, log })` 双位齐全,第 4 段=本次命令原文(命令层 `photo/wizard.ts`
22
+ * 传 `commandLine()`)。预检页那颗 prompt(「给 AI 的指令」)与两页可见文本一字未改。
23
+ */
24
+ import { renderEmptyBlock, renderKpiGrid, renderParamForm } from 'base-paint/blocks';
25
+ import { renderFactStrip } from 'base-paint';
26
+ import { PHOTO_LOG_TAGS, transitionText } from './wizardPort.js';
27
+ import { assembleDocPage, metricsOf } from '../shared/docPage.js';
28
+ import { copyArea, copyLog, promptCopyArea } from '../shared/copyArea.js';
29
+ import { nowStamp } from '../render/receipt.js';
30
+ import { chipRow, photoPickRows, photoUiCss } from './photoUi.js';
31
+ import { editRows, noticeBar, wizardUiCss } from './wizardUi.js';
32
+ /** envelope 头(值冻结对齐 cli/keys.ts ENVELOPE_VERSION/CALORIE_SKILL;测试钉死一致)。 */
33
+ const DOC_VERSION = '0.1.0';
34
+ const DOC_SKILL = 'calorie';
35
+ /** 本文件两页共用的 head 标题(整页模板住 `src/shared/docPage.ts`,标题走参数)。
36
+ * #527:`卡路里·配置向导` 里的 `·` 是符号顶替版面(题名不是并列语义),改空格。 */
37
+ const DOC_TITLE = '卡路里 配置向导';
38
+ /* ── 身体两页已迁出(#353):记围度/记体脂文档原样迁入 src/body/wizardDocs.ts,本件只留身材照/GIF。 */
39
+ /* ── #654 · 复制区(两页共用口径) ── */
40
+ /** 复制日志第 3 段后半的数据来源(前半=库文件名,由 `shared/copyArea.ts` 的 `copyLog` 拼)。
41
+ * 两页分开命名:预检页**不读库**(只核对待登记的值),规划器读的是照片记录。 */
42
+ const LOG_SOURCE_LOG = 'calorie.photo.add 入参(纯核对,不读库)';
43
+ const LOG_SOURCE_PLANNER = 'body_photos(本窗候选照片)';
44
+ /** 复制区(#654):三格式数据 + 复制日志六段(口径与 `photo/galleryDoc.ts` 的 `copyAreaOf` 同形:
45
+ * `log` 位收 `LogTextInput`=`{ envelope, copyLog }`,给错形状那颗按钮就落成点不动的死按钮)。 */
46
+ function copyAreaOf(envelope, command, source) {
47
+ return copyArea({
48
+ data: { envelope },
49
+ log: {
50
+ envelope,
51
+ copyLog: copyLog({ command, source, actionAt: nowStamp(), version: DOC_VERSION }),
52
+ },
53
+ });
54
+ }
55
+ /** #474(审查整改 1)· 下拉候选项:**`value` 是机器真值**(`loop` 的 `0/1/3/5`、`transition` 的
56
+ * `cut/fade/dissolve`,与 `wizardPort.ts` 的校验口径同源),`label` 才是给人看的中文词。
57
+ * 这样当刻视图值能在下拉里**真的落上 `selected`**(先前拿中文当值 → 恒被「选一个」占位顶住,
58
+ * 页上永远看不到当前值=本票要治的「看不见」在新控件上复现)。 */
59
+ const LOOP_OPTIONS = [
60
+ { value: '0', label: '无限' }, { value: '1', label: '1 次' },
61
+ { value: '3', label: '3 次' }, { value: '5', label: '5 次' },
62
+ ];
63
+ const TRANSITION_OPTIONS = [
64
+ { value: 'cut', label: '硬切' }, { value: 'fade', label: '淡入淡出' }, { value: 'dissolve', label: '溶解' },
65
+ ];
66
+ /** #474(审查整改 3c)· 表单上方那句显著的话:本层表单是零 JS 静态预览——**改了不会自动生效**
67
+ * (上面那段给 AI 的指令与页上的读数都是按当刻参数生成的,输入框只当"看到的值")。
68
+ * 不禁用控件(禁用会让人以为"根本不能改"),只把这件事说明白;真接线属公共层另一张票。
69
+ * #527:句中的 `;` 是并列语义,拆成两句(同一件事一页一处,符号不再顶版面)。
70
+ * #655:这句的**措辞一字不动**(票面点名要留的就是它),只换承载它的形状——原来用 `<strong>`
71
+ * 当标题使,视觉重量压过字段;现走 `noticeBar()` 的浅底提示条(13px/不上粗体)。 */
72
+ const FORM_NOTICE = '这些是 AI 已经用的值。改了不会自动生效——要改就直接跟 AI 说一句。';
73
+ /** 块标题行(#655):标题 15/600 在左,右侧一句辅助档小字(不上加粗);不给小字就只出标题。
74
+ * `.phu-sec`(标题档)住 `photo/photoUi.ts`,`.phu-sechead` 一族住 `photo/wizardUi.ts`。 */
75
+ function sectionHead(title, hint) {
76
+ return '<div class="phu-sechead"><h2 class="phu-sec">' + title + '</h2>'
77
+ + (hint === undefined ? '' : '<span class="phu-sechead-s">' + hint + '</span>') + '</div>';
78
+ }
79
+ /** 一行参数(#655):确认清单的每行只装**一个**字段——值住行上的只读一行,输入框住展开后的编辑体。
80
+ * 一行一个 `renderParamForm` 调用:`min/max/step/options` 的落位口径全归公共层,本层不重写。 */
81
+ function paramRow(field) {
82
+ return renderParamForm({ fields: [field] });
83
+ }
84
+ /* ── 3. 记身材照 wizard(纯配置) ── */
85
+ /** #654:`command`=本次命令原文(命令层 `photo/wizard.ts` 的 `commandLine()` 派生),进复制日志第 4 段。 */
86
+ export function buildPhotoLogWizardDoc(v, command) {
87
+ const envelope = {
88
+ version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.photo-log-wizard',
89
+ data: { metrics: metricsOf({ fileCount: v.srcPaths.length, hasTag: v.tag ? 1 : 0 }) },
90
+ };
91
+ const content = [
92
+ // 页内样式进 parts 第一项(`assembleDocPage` 没有页内 CSS 入口,同 `photoUi.ts` 的处置)。
93
+ // #655:本件两页的确认清单**样式**另住姊妹件 `photo/wizardUi.ts` —— 那份样式只服务这两页,
94
+ // 并进 `photoUiCss()` 会让读侧族七页的产物字节跟着变(等于本票顺手动了别人的页)。
95
+ photoUiCss(), wizardUiCss(),
96
+ // #655 缺陷 2:这页的定位是「确认 AI 已经用好的值」,改前三个空框一个字的值都看不见
97
+ //(读数卡只说「0 张/未填」)。现改成**确认清单**:值先只读一行,点开哪一行才出哪一行的输入。
98
+ // 原来那两张读数卡(照片 N 张/标签 X)不再单出——同一件事由清单的行名与值行角标承载,
99
+ // 读数一个不丢(张数落 `badge`、标签落它自己那一行的值位)。
100
+ sectionHead('要登记的三个值', '点开哪一项就改哪一项'),
101
+ // #655 缺陷 3:提示句从加粗标题降成浅底条,位置仍在字段之前(#474 的判据不变)。
102
+ noticeBar(FORM_NOTICE),
103
+ editRows([
104
+ {
105
+ k: '照片文件路径', v: v.srcPaths.join('\n'),
106
+ // 张数是原来读数卡那一格要说的数字 → 改住值行角标(同一件事换形状,不丢读数)。
107
+ ...(v.srcPaths.length > 0 ? { badge: v.srcPaths.length + ' 张' } : {}),
108
+ bodyHtml: paramRow({
109
+ name: 'srcPaths',
110
+ label: '照片文件路径(最多 20 张。如 D:\\照片\\正面1.jpg,多张换行或逗号分隔)',
111
+ value: v.srcPaths.join('\n'), hint: '每行 1 个', required: true,
112
+ }),
113
+ },
114
+ {
115
+ k: '标签', v: v.tag ?? '', emptyText: '还没填',
116
+ bodyHtml: paramRow({
117
+ name: 'tag', label: '标签(最多 20 个字)', value: v.tag ?? '', hint: '如:正面', required: true,
118
+ }),
119
+ },
120
+ {
121
+ k: '备注', v: v.note ?? '', emptyText: '没填(这栏可以不填)',
122
+ bodyHtml: paramRow({
123
+ name: 'note', label: '备注', value: v.note ?? '', hint: '如:早上空腹 / 减脂期第 30 天',
124
+ }),
125
+ },
126
+ ]),
127
+ // #655 缺陷 7:常用标签原来是首屏第一个块(折叠着也占掉一行)——现在**下移**到这里,
128
+ // 紧跟三个值之后;8 个词仍逐字可见(本票只改它住哪,不改它说什么)。
129
+ sectionHead('常用标签(点一个填上去)'),
130
+ chipRow([...PHOTO_LOG_TAGS]),
131
+ // #474:段前一句引导——复制区里是给 AI 的英文命令,先说清「整段复制粘过去就行」。
132
+ '<p>下面这段是给 AI 的指令:整段复制粘过去就行,英文命令不用看懂。</p>',
133
+ promptCopyArea(v.prompt, '给 AI 的指令(复制这一段)'),
134
+ copyAreaOf(envelope, command, LOG_SOURCE_LOG),
135
+ ].join('');
136
+ return assembleDocPage({
137
+ docTitle: DOC_TITLE,
138
+ title: '记身材照',
139
+ // #474:眉标里的内部词「wizard」「纯配置」与副标题说同一件事 → 眉标改人话不重复。
140
+ // #527:眉标的 `记身材照 · 只登记路径` 是 `·` 串两件事,且页名已经说了「记身材照」→ 只留后半句。
141
+ eyebrow: '只登记路径',
142
+ subtitle: '先核对要登记的照片与标签,再复制指令给 AI。照片本身不会被动。',
143
+ content,
144
+ // #525 页面级移动端配方:本族另外七页都在用,只有本件两页漏了(`renderFactStrip` 的形状
145
+ // 样式与宽屏 1280 版式都挂在根类下,不启用则一条都命中不到)。本票补上,与全族同值。
146
+ pageUi: true,
147
+ });
148
+ }
149
+ /* ── 4. GIF 框选器 ── */
150
+ /** 循环次数的人话(KPI 与下拉共用一份,防两处走散)。 */
151
+ function loopText(loop) {
152
+ return loop === 0 ? '无限循环' : loop + ' 次循环';
153
+ }
154
+ /** 输出规格那三件事(每帧多久/循环几次/有没有水印):KPI 卡的明细槽吃纯文本,形状落不进去,
155
+ * 故在卡下另出一排**事实条**(#525 的 `renderFactStrip` 口径,本域只给数据)。 */
156
+ function outputFacts(v) {
157
+ return renderFactStrip({
158
+ items: [
159
+ { label: '每帧停', value: (v.duration / 1000).toFixed(2).replace(/0$/, '') + ' 秒' },
160
+ { label: '循环', value: loopText(v.loop) },
161
+ ...(v.watermark === null ? [] : [{ label: '水印', value: v.watermark }]),
162
+ ],
163
+ });
164
+ }
165
+ /** #527 候选行(原六列表在窄屏被挤成长串):一行一张照片——编号/标签/文件名/异常徽标各占一槽,
166
+ * 日期与整图或裁剪走第二行的徽章列。**不印 `#N`**(内部标识符口径),改「照片 31」这种读者话;
167
+ * 正常张留空(「存在」是零信息值),找不到文件才挂徽标。 */
168
+ function gifCandidates(v) {
169
+ if (v.photos.length === 0) {
170
+ return renderEmptyBlock({ text: '这个标签/时间窗里没有照片:换个标签,或把时间窗放宽一点' });
171
+ }
172
+ return photoPickRows(v.photos.map((p) => ({
173
+ no: '照片 ' + p.id,
174
+ file: p.photoPath,
175
+ tag: p.tagList.join('、') || '无标签',
176
+ ...(p.fileExists === false ? { badge: { tone: 'warn', text: '会跳过' } } : {}),
177
+ meta: [p.date, p.selected ? '已框选' : '没框选', p.crop ? '裁剪过' : '整图'],
178
+ })));
179
+ }
180
+ /** #474:预填过的字段看不见 placeholder——限制与单位一律进字段名(固定小字),
181
+ * 只有**空字段**才留 hint(那时它显示得出来);下拉不再给「选一个」占位:
182
+ * **当刻值那一条恒 `selected`**(#527 第 5 条:下拉显示当前值,不显示「选一个」)。
183
+ *
184
+ * #655 缺陷 8:改前把九项默认值全画成输入框,看着像要用户逐个核对的表单 —— 改成三组
185
+ * **只读键值行**(`editRows`):值先以当刻值上屏,只展开「要改的那一项」。
186
+ * 分组按**变化频率**切(照片选择/播放/画面与文件),块与块之间由 `.phu-sechead` 分割。 */
187
+ function gifForm(v) {
188
+ const all = v.photos.length > 0 && v.selectedIds.length === v.photos.length;
189
+ const picked = v.selectedIds.length === 0 ? ''
190
+ : (all ? '全部 ' : '') + v.selectedIds.length + ' 张';
191
+ return [
192
+ sectionHead('选哪些照片', '点开哪一项就改哪一项'),
193
+ editRows([
194
+ {
195
+ k: '标签', v: v.tag ?? '', emptyText: '全部标签',
196
+ bodyHtml: paramRow({ name: 'tag', label: '标签(留空就是全部标签)', value: v.tag ?? '', hint: '如:正面' }),
197
+ },
198
+ {
199
+ k: '框选照片编号', v: picked, emptyText: '没框选任何一张',
200
+ // #474(审查整改 3a)的口径照旧:`crops` 那一栏**真撤掉**(`name="crops"` 不留空框),
201
+ // 要裁就在对话里说一句;`crops` 键本身仍在 `wizardPort.ts` 的入参允许清单与 prompt 复刻里。
202
+ bodyHtml: paramRow({
203
+ name: 'photoIds', label: '框选照片编号(逗号分隔,留空就是全部)',
204
+ value: v.selectedIds.join(','), hint: '如 12,15,22',
205
+ }),
206
+ },
207
+ ]),
208
+ sectionHead('播放'),
209
+ editRows([
210
+ {
211
+ k: '每帧多久', v: v.duration + ' 毫秒',
212
+ bodyHtml: paramRow({
213
+ name: 'duration', label: '每帧多久(毫秒,50 到 5000)',
214
+ value: String(v.duration), min: 50, max: 5000, step: 50,
215
+ }),
216
+ },
217
+ {
218
+ k: '循环', v: loopText(v.loop),
219
+ bodyHtml: paramRow({ name: 'loop', label: '循环', value: String(v.loop), options: LOOP_OPTIONS }),
220
+ },
221
+ {
222
+ k: '切换效果', v: transitionText(v.transition),
223
+ bodyHtml: paramRow({
224
+ name: 'transition', label: '切换效果', value: v.transition, options: TRANSITION_OPTIONS,
225
+ }),
226
+ },
227
+ ]),
228
+ sectionHead('画面与文件'),
229
+ editRows([
230
+ {
231
+ k: '宽', v: v.width + ' 像素',
232
+ bodyHtml: paramRow({
233
+ name: 'width', label: '宽(像素,100 到 2000)', value: String(v.width), min: 100, max: 2000, step: 1,
234
+ }),
235
+ },
236
+ {
237
+ k: '高', v: v.height + ' 像素',
238
+ bodyHtml: paramRow({
239
+ name: 'height', label: '高(像素,100 到 2000)', value: String(v.height), min: 100, max: 2000, step: 1,
240
+ }),
241
+ },
242
+ {
243
+ k: '水印文字', v: v.watermark ?? '', emptyText: '没填',
244
+ bodyHtml: paramRow({
245
+ name: 'watermark', label: '水印文字(可选)', value: v.watermark ?? '', hint: '右下角,如:减脂 30 天',
246
+ }),
247
+ },
248
+ {
249
+ k: '输出文件名', v: v.output ?? '', emptyText: '没填',
250
+ bodyHtml: paramRow({
251
+ name: 'output', label: '输出文件名(可选)', value: v.output ?? '', hint: '如:front_30days.gif',
252
+ }),
253
+ },
254
+ ]),
255
+ ].join('');
256
+ }
257
+ /** #654:`command`=本次命令原文(命令层 `photo/wizard.ts` 的 `commandLine()` 派生),进复制日志第 4 段。 */
258
+ export function buildGifPlannerDoc(v, command) {
259
+ // 本轮照片里文件找不到的张数(与候选行「会跳过」徽标同一口径);不是框选缺 ID,两者分开命名。
260
+ const notFound = v.photos.filter((p) => p.fileExists === false).length;
261
+ const envelope = {
262
+ version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.gif-planner',
263
+ data: {
264
+ metrics: metricsOf({
265
+ photoCount: v.photos.length, selectedCount: v.selectedIds.length,
266
+ missingCount: v.missingIds.length,
267
+ cropCount: v.photos.filter((p) => p.crop).length,
268
+ }),
269
+ },
270
+ };
271
+ const content = [
272
+ // 页内样式进 parts 第一项(`assembleDocPage` 没有页内 CSS 入口,同 `photoUi.ts` 的处置)。
273
+ // #655:本件两页的确认清单**样式**另住姊妹件 `photo/wizardUi.ts`(同上页那一段的理由)。
274
+ photoUiCss(), wizardUiCss(),
275
+ // 身份行(#527):`标签 正面 · 近 N 天` 那样的 `·` 串改徽章列——同一件事换形状,不是删字符。
276
+ chipRow([
277
+ v.tag === null || v.tag === '' ? '全部标签' : '标签 ' + v.tag,
278
+ v.selectedIds.length + ' 张进 GIF',
279
+ notFound > 0 ? notFound + ' 张找不到文件' : '',
280
+ ]),
281
+ renderKpiGrid([
282
+ // #474:原「共 N 张可用」把「可用」当「库里有」用,与表内「找不到」正面冲突 → 说清是库里共几张。
283
+ { label: '要用', value: String(v.selectedIds.length), unit: '张', detail: '库里共 ' + v.photos.length + ' 张' },
284
+ // #474:原「文件丢失」其实数的是框选里点不到的 ID(`missingIds`)→ 换名,不再与表内冲突。
285
+ {
286
+ label: '框选里没有的 ID', value: String(v.missingIds.length),
287
+ ...(v.missingIds.length > 0 ? { detail: '已跳过 ' + v.missingIds.join('、') } : {}),
288
+ },
289
+ // #474:本轮新立一格——文件找不到是另一回事,异常才挂状态徽标(正常格不出徽标)。
290
+ notFound > 0
291
+ ? { label: '文件找不到', value: String(notFound), unit: '张', status: 'warn', statusText: '会跳过' }
292
+ : { label: '文件找不到', value: '0', unit: '张' },
293
+ // #474:原格 label「尺寸」与明细(帧速/循环)不是一件事 → 改「GIF 输出」,label 与明细对得上。
294
+ // #527:明细原句 `500ms/帧 · 无限循环` 是 `·` 串出来的两件事 → 撤到卡下的事实条(本行只说尺寸)。
295
+ { label: 'GIF 输出', value: v.width + '×' + v.height },
296
+ ]),
297
+ outputFacts(v),
298
+ // #655:候选清单原来直接跟在事实条后头、与下方参数区连成一片 → 补一条块标题(15/600)分开两块。
299
+ sectionHead('会进 GIF 的照片'),
300
+ gifCandidates(v),
301
+ noticeBar(FORM_NOTICE),
302
+ // #655 缺陷 3:表单说明原是一段 13px 灰字,与新提示条抢同一格 → 收成一条 12px 辅助行。
303
+ // `;` 是并列语义,拆成两句(`audit-separators.mjs` 的 R2 节点级判据:#527 起本仓不许拿它串行)。
304
+ '<p class="phu-note">下面每项都已填好常用值,点开哪一项就改哪一项。改完把下面那段指令复制给 AI。</p>',
305
+ gifForm(v),
306
+ promptCopyArea(v.prompt, '复制指令(给 AI 的那段)'),
307
+ copyAreaOf(envelope, command, LOG_SOURCE_PLANNER),
308
+ ].join('');
309
+ return assembleDocPage({
310
+ docTitle: DOC_TITLE,
311
+ title: '身材照 GIF 规划器',
312
+ // #474:眉标原句自述「本项目缺什么」(无 cropper.js/手动 4 数字坐标),对用户零收益 → 删。
313
+ // #527:副标题原用 `→` 串三步、还与页名/表单说明三处说同一件事 → 改一句「这页帮你做什么」。
314
+ eyebrow: '',
315
+ subtitle: '先看会进 GIF 的照片,再定快慢与尺寸。改哪项直接跟 AI 说一句。',
316
+ content,
317
+ // #525 页面级移动端配方:本族另外七页都在用,只有本件两页漏了(`renderFactStrip` 的形状
318
+ // 样式与宽屏 1280 版式都挂在根类下,不启用则一条都命中不到)。本票补上,与全族同值。
319
+ pageUi: true,
320
+ });
321
+ }
322
+ //# sourceMappingURL=wizardPortDocs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wizardPortDocs.js","sourceRoot":"","sources":["../../src/photo/wizardPortDocs.ts"],"names":[],"mappings":"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"}