skill-calorie 0.2.1 → 0.2.3

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 (117) hide show
  1. package/SKILL.md +15 -12
  2. package/dist/analysis/cross.js +3 -3
  3. package/dist/analysis/cross.js.map +1 -1
  4. package/dist/analysis/series.js +3 -3
  5. package/dist/analysis/series.js.map +1 -1
  6. package/dist/analysis/utils.d.ts +11 -0
  7. package/dist/analysis/utils.d.ts.map +1 -1
  8. package/dist/analysis/utils.js +11 -0
  9. package/dist/analysis/utils.js.map +1 -1
  10. package/dist/cli/cmd_read.d.ts +5 -0
  11. package/dist/cli/cmd_read.d.ts.map +1 -1
  12. package/dist/cli/cmd_read.js +47 -11
  13. package/dist/cli/cmd_read.js.map +1 -1
  14. package/dist/cli/keys.d.ts +5 -1
  15. package/dist/cli/keys.d.ts.map +1 -1
  16. package/dist/cli/keys.js +3 -0
  17. package/dist/cli/keys.js.map +1 -1
  18. package/dist/cli/write.d.ts +3 -1
  19. package/dist/cli/write.d.ts.map +1 -1
  20. package/dist/cli/write.js +51 -7
  21. package/dist/cli/write.js.map +1 -1
  22. package/dist/fetch/body.js +7 -7
  23. package/dist/fetch/body.js.map +1 -1
  24. package/dist/fetch/exercise.d.ts.map +1 -1
  25. package/dist/fetch/exercise.js +7 -3
  26. package/dist/fetch/exercise.js.map +1 -1
  27. package/dist/fetch/nutritionGoal.d.ts.map +1 -1
  28. package/dist/fetch/nutritionGoal.js +15 -4
  29. package/dist/fetch/nutritionGoal.js.map +1 -1
  30. package/dist/output.d.ts +15 -10
  31. package/dist/output.d.ts.map +1 -1
  32. package/dist/output.js +69 -27
  33. package/dist/output.js.map +1 -1
  34. package/dist/profile/setup.d.ts +48 -0
  35. package/dist/profile/setup.d.ts.map +1 -0
  36. package/dist/profile/setup.js +290 -0
  37. package/dist/profile/setup.js.map +1 -0
  38. package/dist/profile/update.d.ts +5 -0
  39. package/dist/profile/update.d.ts.map +1 -0
  40. package/dist/profile/update.js +65 -0
  41. package/dist/profile/update.js.map +1 -0
  42. package/dist/profile/view.d.ts +33 -0
  43. package/dist/profile/view.d.ts.map +1 -0
  44. package/dist/profile/view.js +94 -0
  45. package/dist/profile/view.js.map +1 -0
  46. package/dist/render/dietDocs.d.ts.map +1 -1
  47. package/dist/render/dietDocs.js +86 -49
  48. package/dist/render/dietDocs.js.map +1 -1
  49. package/dist/render/helpCenter.d.ts.map +1 -1
  50. package/dist/render/helpCenter.js +4 -2
  51. package/dist/render/helpCenter.js.map +1 -1
  52. package/dist/render/helpFile.d.ts +26 -0
  53. package/dist/render/helpFile.d.ts.map +1 -0
  54. package/dist/render/helpFile.js +60 -0
  55. package/dist/render/helpFile.js.map +1 -0
  56. package/dist/render/helpPaths.d.ts +22 -0
  57. package/dist/render/helpPaths.d.ts.map +1 -0
  58. package/dist/render/helpPaths.js +22 -0
  59. package/dist/render/helpPaths.js.map +1 -0
  60. package/dist/render/helpShell.d.ts +16 -0
  61. package/dist/render/helpShell.d.ts.map +1 -0
  62. package/dist/render/helpShell.js +27 -0
  63. package/dist/render/helpShell.js.map +1 -0
  64. package/dist/render/html.d.ts +1 -1
  65. package/dist/render/html.d.ts.map +1 -1
  66. package/dist/render/index.d.ts +2 -2
  67. package/dist/render/index.d.ts.map +1 -1
  68. package/dist/render/index.js +3 -1
  69. package/dist/render/index.js.map +1 -1
  70. package/dist/render/nutritionPortDocs.d.ts.map +1 -1
  71. package/dist/render/nutritionPortDocs.js +41 -48
  72. package/dist/render/nutritionPortDocs.js.map +1 -1
  73. package/dist/render/receipt.d.ts +4 -0
  74. package/dist/render/receipt.d.ts.map +1 -1
  75. package/dist/render/receipt.js +4 -1
  76. package/dist/render/receipt.js.map +1 -1
  77. package/dist/render/sportDocs.d.ts.map +1 -1
  78. package/dist/render/sportDocs.js +86 -58
  79. package/dist/render/sportDocs.js.map +1 -1
  80. package/dist/render/sportPortDocs.d.ts.map +1 -1
  81. package/dist/render/sportPortDocs.js +59 -52
  82. package/dist/render/sportPortDocs.js.map +1 -1
  83. package/dist/render/trendDocs.d.ts.map +1 -1
  84. package/dist/render/trendDocs.js +59 -52
  85. package/dist/render/trendDocs.js.map +1 -1
  86. package/dist/render/trendMiscPortDocs.d.ts.map +1 -1
  87. package/dist/render/trendMiscPortDocs.js +77 -56
  88. package/dist/render/trendMiscPortDocs.js.map +1 -1
  89. package/dist/render/wizardPortDocs.d.ts.map +1 -1
  90. package/dist/render/wizardPortDocs.js +41 -51
  91. package/dist/render/wizardPortDocs.js.map +1 -1
  92. package/dist/schema.d.ts.map +1 -1
  93. package/dist/schema.js +11 -0
  94. package/dist/schema.js.map +1 -1
  95. package/dist/shared/copyArea.d.ts +54 -0
  96. package/dist/shared/copyArea.d.ts.map +1 -0
  97. package/dist/shared/copyArea.js +89 -0
  98. package/dist/shared/copyArea.js.map +1 -0
  99. package/dist/shared/docPage.d.ts +20 -0
  100. package/dist/shared/docPage.d.ts.map +1 -0
  101. package/dist/shared/docPage.js +55 -0
  102. package/dist/shared/docPage.js.map +1 -0
  103. package/dist/triggers/routing.d.ts +9 -7
  104. package/dist/triggers/routing.d.ts.map +1 -1
  105. package/dist/triggers/routing.js +27 -25
  106. package/dist/triggers/routing.js.map +1 -1
  107. package/dist/triggers/scene-07-profile.js +3 -3
  108. package/dist/triggers/scene-07-profile.js.map +1 -1
  109. package/dist/triggers/wake-assets.d.ts +47 -0
  110. package/dist/triggers/wake-assets.d.ts.map +1 -0
  111. package/dist/triggers/wake-assets.js +4715 -0
  112. package/dist/triggers/wake-assets.js.map +1 -0
  113. package/package.json +2 -2
  114. package/dist/render/profilePlate.d.ts +0 -17
  115. package/dist/render/profilePlate.d.ts.map +0 -1
  116. package/dist/render/profilePlate.js +0 -18
  117. package/dist/render/profilePlate.js.map +0 -1
@@ -18,40 +18,14 @@
18
18
  * 复制文本一律 buildDataText(#77 契约,技能侧不自产第二套序列化):指标页走 stat 投影。
19
19
  * 本层不做取数(数据由调用方 dispatch 备齐),不返空(缺失由数据层抛 missing-data)。
20
20
  */
21
- import { blocksCss, renderChartBlock, renderCopyBlock, renderDataTable, renderDisclosure, renderKpiGrid, renderListRows, renderPageShell, renderParamForm, } from 'base-paint/blocks';
22
- import { buildChartsHelpersJs, buildDataText, buildSharedHelpersJs, buildStyleSheet, fillTemplate } from 'base-paint';
21
+ import { renderChartBlock, renderDataTable, renderDisclosure, renderKpiGrid, renderListRows, renderParamForm, } from 'base-paint/blocks';
22
+ import { assembleDocPage, metricsOf } from '../shared/docPage.js';
23
+ import { dataCopyArea } from '../shared/copyArea.js';
23
24
  /** envelope 头(值冻结对齐 cli/keys.ts ENVELOPE_VERSION/CALORIE_SKILL;测试钉死一致)。 */
24
25
  const DOC_VERSION = '0.1.0';
25
26
  const DOC_SKILL = 'calorie';
26
- /** 内容页壳(裸标记+CONTENT 槽;包裹约定:资产裸文本+填充器包裹,标记不得预包裹)。
27
- * wrap ilife-page 兼容既有 --html 断言。 */
28
- const DOC_SHELL = '<!doctype html>\n<html lang="zh-CN">\n<head>\n<meta charset="utf-8">\n' +
29
- '<meta name="viewport" content="width=device-width,initial-scale=1">\n' +
30
- '<title>卡路里·趋势分析</title>\n<!--SHARED-CSS-->\n</head>\n<body>\n' +
31
- '<div class="wrap ilife-page">\n<!--CONTENT-->\n</div>\n<!--SHARED-HELPERS-->\n</body>\n</html>';
32
- /** 图表页壳(多一个 CHARTS-HELPERS 标记,图表 CSS 由 charts helpers 运行时注入)。 */
33
- const DOC_SHELL_CHARTS = '<!doctype html>\n<html lang="zh-CN">\n<head>\n<meta charset="utf-8">\n' +
34
- '<meta name="viewport" content="width=device-width,initial-scale=1">\n' +
35
- '<title>卡路里·趋势分析</title>\n<!--SHARED-CSS-->\n</head>\n<body>\n' +
36
- '<div class="wrap ilife-page">\n<!--CONTENT-->\n</div>\n<!--SHARED-HELPERS-->\n<!--CHARTS-HELPERS-->\n</body>\n</html>';
37
- function assemble(title, eyebrow, subtitle, content, charts) {
38
- const assets = {
39
- sharedCssText: buildStyleSheet().css + '\n' + blocksCss(),
40
- sharedHelpersJs: buildSharedHelpersJs(),
41
- };
42
- if (charts)
43
- assets.chartsHelpersJs = buildChartsHelpersJs();
44
- const body = renderPageShell({
45
- title,
46
- ...(eyebrow ? { eyebrow } : {}),
47
- ...(subtitle ? { subtitle } : {}),
48
- content,
49
- });
50
- return fillTemplate({ template: charts ? DOC_SHELL_CHARTS : DOC_SHELL, assets, content: body }).html;
51
- }
52
- function copyBlock(title, input) {
53
- return renderCopyBlock({ title, dataText: buildDataText(input) });
54
- }
27
+ /** 本文件各页共用的 head 标题(整页模板住 `src/shared/docPage.ts`,标题走参数)。 */
28
+ const DOC_TITLE = '卡路里·趋势分析';
55
29
  function fmt(n) {
56
30
  if (n === null || n === undefined)
57
31
  return '—';
@@ -68,15 +42,6 @@ function corrInterp(r) {
68
42
  return '中等相关';
69
43
  return '弱相关';
70
44
  }
71
- /** 复制投影 stat-metrics 只收确定数字(冻结口径:null/undefined 不进投影;随 #108/#109 同理)。 */
72
- function metricsOf(obj) {
73
- const out = {};
74
- for (const [k, v] of Object.entries(obj)) {
75
- if (v !== null && v !== undefined)
76
- out[k] = v;
77
- }
78
- return out;
79
- }
80
45
  const SEV_ZH = { error: '错误', warn: '警告', info: '提示' };
81
46
  const CONTRA_STATUS_ZH = { ok: '通过', warn: '有警告', fail: '有错误' };
82
47
  /* ── 组合分析(combined_analysis.html 对照:KPI+双轴走势+相关回归散点+延迟相关+分层对比+insight) ── */
@@ -196,7 +161,7 @@ export function buildCombinedDoc(c) {
196
161
  }),
197
162
  }));
198
163
  }
199
- parts.push(copyBlock('复制数据', {
164
+ parts.push(dataCopyArea('复制数据', {
200
165
  envelope: {
201
166
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.combined',
202
167
  data: {
@@ -209,7 +174,14 @@ export function buildCombinedDoc(c) {
209
174
  },
210
175
  },
211
176
  }));
212
- return assemble('组合分析 ' + a.labels.a + ' vs ' + a.labels.b, 'calorie.view.combined · 趋势分析域', a.insight || null, parts.join(''), charts);
177
+ return assembleDocPage({
178
+ docTitle: DOC_TITLE,
179
+ title: '组合分析 ' + a.labels.a + ' vs ' + a.labels.b,
180
+ eyebrow: 'calorie.view.combined · 趋势分析域',
181
+ subtitle: a.insight || null,
182
+ content: parts.join(''),
183
+ charts,
184
+ });
213
185
  }
214
186
  /* ── 热量缺口(calorie_deficit.html 对照:4 KPI+每日摄入 vs 消耗+缺口明细表) ── */
215
187
  const DEFICIT_TREND_ZH = { loss: '减重方向', gain: '增重方向', flat: '持平' };
@@ -272,7 +244,7 @@ export function buildDeficitDoc(d) {
272
244
  emptyText: '窗口内无缺口数据',
273
245
  }));
274
246
  }
275
- parts.push(copyBlock('复制数据', {
247
+ parts.push(dataCopyArea('复制数据', {
276
248
  envelope: {
277
249
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.deficit',
278
250
  data: {
@@ -285,7 +257,14 @@ export function buildDeficitDoc(d) {
285
257
  },
286
258
  },
287
259
  }));
288
- return assemble('热量缺口 ' + d.meta.start + ' ~ ' + d.meta.end, 'calorie.view.deficit · 趋势分析域', null, parts.join(''), charts);
260
+ return assembleDocPage({
261
+ docTitle: DOC_TITLE,
262
+ title: '热量缺口 ' + d.meta.start + ' ~ ' + d.meta.end,
263
+ eyebrow: 'calorie.view.deficit · 趋势分析域',
264
+ subtitle: null,
265
+ content: parts.join(''),
266
+ charts,
267
+ });
289
268
  }
290
269
  /* ── 异常诊断(anomaly_report.html 对照:诊断 KPI+发现列表+insight;旧截断 5→全量) ── */
291
270
  export function buildAnomalyDoc(v) {
@@ -313,7 +292,7 @@ export function buildAnomalyDoc(v) {
313
292
  emptyText: '本窗无异常发现(诊断正常)',
314
293
  }),
315
294
  ];
316
- parts.push(copyBlock('复制数据', {
295
+ parts.push(dataCopyArea('复制数据', {
317
296
  envelope: {
318
297
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.anomaly',
319
298
  data: {
@@ -321,7 +300,14 @@ export function buildAnomalyDoc(v) {
321
300
  },
322
301
  },
323
302
  }));
324
- return assemble('异常诊断 ' + (dg.title || v.kind), 'calorie.view.anomaly · 趋势分析域', dg.insight || null, parts.join(''), false);
303
+ return assembleDocPage({
304
+ docTitle: DOC_TITLE,
305
+ title: '异常诊断 ' + (dg.title || v.kind),
306
+ eyebrow: 'calorie.view.anomaly · 趋势分析域',
307
+ subtitle: dg.insight || null,
308
+ content: parts.join(''),
309
+ charts: false,
310
+ });
325
311
  }
326
312
  /* ── 禁忌扫描(contraindication_report.html 对照:扫描概览+命中表+替代建议+复制修改指令) ── */
327
313
  export function buildContraDoc(v) {
@@ -368,7 +354,7 @@ export function buildContraDoc(v) {
368
354
  emptyText: '无替代建议',
369
355
  }));
370
356
  }
371
- parts.push(copyBlock('复制修改指令', {
357
+ parts.push(dataCopyArea('复制修改指令', {
372
358
  envelope: {
373
359
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.contraindication',
374
360
  data: {
@@ -379,7 +365,14 @@ export function buildContraDoc(v) {
379
365
  },
380
366
  },
381
367
  }));
382
- return assemble('禁忌扫描(' + v.part + ')', 'calorie.view.contraindication · 趋势分析域', null, parts.join(''), false);
368
+ return assembleDocPage({
369
+ docTitle: DOC_TITLE,
370
+ title: '禁忌扫描(' + v.part + ')',
371
+ eyebrow: 'calorie.view.contraindication · 趋势分析域',
372
+ subtitle: null,
373
+ content: parts.join(''),
374
+ charts: false,
375
+ });
383
376
  }
384
377
  /* ── 体重预测(predict_report 对照:点预测 KPI+insight;曲线归组合分析,见 §3 R4) ── */
385
378
  export function buildPredictDoc(v) {
@@ -399,7 +392,7 @@ export function buildPredictDoc(v) {
399
392
  { label: '区间', value: fmt(v.forecastLo) + ' ~ ' + fmt(v.forecastHi), unit: 'kg' },
400
393
  ]),
401
394
  ];
402
- parts.push(copyBlock('复制数据', {
395
+ parts.push(dataCopyArea('复制数据', {
403
396
  envelope: {
404
397
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.predict',
405
398
  data: {
@@ -410,7 +403,14 @@ export function buildPredictDoc(v) {
410
403
  },
411
404
  },
412
405
  }));
413
- return assemble('体重预测(' + v.horizonDays + ' 天)', 'calorie.view.predict · 趋势分析域', v.insight || null, parts.join(''), false);
406
+ return assembleDocPage({
407
+ docTitle: DOC_TITLE,
408
+ title: '体重预测(' + v.horizonDays + ' 天)',
409
+ eyebrow: 'calorie.view.predict · 趋势分析域',
410
+ subtitle: v.insight || null,
411
+ content: parts.join(''),
412
+ charts: false,
413
+ });
414
414
  }
415
415
  /* ── 目标预测达成(目标达成 ETA:KPI+可行性;曲线归组合分析,见 §3 R4) ── */
416
416
  export function buildGoalPredictDoc(v) {
@@ -429,7 +429,7 @@ export function buildGoalPredictDoc(v) {
429
429
  { label: '速率', value: String(v.ratePerWeek), unit: 'kg/周', detail: v.feasible ? '健康' : '超范围' },
430
430
  ]),
431
431
  ];
432
- parts.push(copyBlock('复制数据', {
432
+ parts.push(dataCopyArea('复制数据', {
433
433
  envelope: {
434
434
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.goal-predict',
435
435
  data: {
@@ -440,6 +440,13 @@ export function buildGoalPredictDoc(v) {
440
440
  },
441
441
  },
442
442
  }));
443
- return assemble('目标预测达成', 'calorie.view.goal-predict · 趋势分析域', null, parts.join(''), false);
443
+ return assembleDocPage({
444
+ docTitle: DOC_TITLE,
445
+ title: '目标预测达成',
446
+ eyebrow: 'calorie.view.goal-predict · 趋势分析域',
447
+ subtitle: null,
448
+ content: parts.join(''),
449
+ charts: false,
450
+ });
444
451
  }
445
452
  //# sourceMappingURL=trendDocs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trendDocs.js","sourceRoot":"","sources":["../../src/render/trendDocs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,oBAAoB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAMtH,2EAA2E;AAC3E,MAAM,WAAW,GAAG,OAAO,CAAC;AAC5B,MAAM,SAAS,GAAG,SAAS,CAAC;AAE5B;wCACwC;AACxC,MAAM,SAAS,GACb,wEAAwE;IACxE,uEAAuE;IACvE,+DAA+D;IAC/D,gGAAgG,CAAC;AAEnG,iEAAiE;AACjE,MAAM,gBAAgB,GACpB,wEAAwE;IACxE,uEAAuE;IACvE,+DAA+D;IAC/D,uHAAuH,CAAC;AAI1H,SAAS,QAAQ,CAAC,KAAa,EAAE,OAAe,EAAE,QAAuB,EAAE,OAAe,EAAE,MAAe;IACzG,MAAM,MAAM,GAAiF;QAC3F,aAAa,EAAE,eAAe,EAAE,CAAC,GAAG,GAAG,IAAI,GAAG,SAAS,EAAE;QACzD,eAAe,EAAE,oBAAoB,EAAE;KACxC,CAAC;IACF,IAAI,MAAM;QAAE,MAAM,CAAC,eAAe,GAAG,oBAAoB,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,eAAe,CAAC;QAC3B,KAAK;QACL,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,OAAO;KACR,CAAC,CAAC;IACH,OAAO,YAAY,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AACvG,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,KAAgB;IAChD,OAAO,eAAe,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,GAAG,CAAC,CAA4B;IACvC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAC9C,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,qEAAqE;AACrE,SAAS,UAAU,CAAC,CAAgB;IAClC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACjD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,KAAK,CAAC;IAC3B,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,MAAM,CAAC;IAC5B,OAAO,KAAK,CAAC;AACf,CAAC;AAED,yEAAyE;AACzE,SAAS,SAAS,CAAC,GAA8C;IAC/D,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,MAAM,GAA2B,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC/E,MAAM,gBAAgB,GAA2B,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAExF,6EAA6E;AAE7E,MAAM,UAAU,gBAAgB,CAAC,CAAmB;IAClD,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;IACrB,MAAM,KAAK,GAAa;QACtB,eAAe,CAAC;YACd,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;gBAC5C,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChD,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE;gBAC9C,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;aAC3C;YACD,WAAW,EAAE,2FAA2F;SACzG,CAAC;QACF,aAAa,CAAC;YACZ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YACzH,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE;YACjH,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE;YACjH,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE;SACjF,CAAC;KACH,CAAC;IACF,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC1B,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,kBAAkB;YACvE,KAAK,EAAE;gBACL,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE;oBACP,MAAM,EAAE;wBACN,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;wBACnC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;qBAClE;iBACF;aACF;SACF,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC1B,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;YAC3G,KAAK,EAAE;gBACL,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACjD,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,KAAK,IAAI,EAAE;aAC/C;SACF,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;YACzB,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE;gBAC7B,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC7C,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;aAC/B;YACD,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtB,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,kBAAkB;gBACtC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;aACxB,CAAC,CAAC;YACH,OAAO,EAAE,2BAA2B;YACpC,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;YACzB,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC7B,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC5C,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;gBACjD,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC9C,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7B;YACD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7B,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;aACrF,CAAC,CAAC;YACH,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACvF,SAAS,EAAE,OAAO;SACnB,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;YACzB,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE;gBAC/B,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;aAC7C;YACD,IAAI,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,OAAO,EAAE,8BAA8B;YACvC,SAAS,EAAE,OAAO;SACnB,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC1B,KAAK,EAAE,kBAAkB,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,4BAA4B;YACjF,WAAW,EAAE,cAAc,CAAC;gBAC1B,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;aACjD,CAAC;SACH,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC1B,KAAK,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YAClH,WAAW,EAAE,eAAe,CAAC;gBAC3B,OAAO,EAAE;oBACP,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;oBAC5B,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE;oBAChD,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE;iBACjD;gBACD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtE,OAAO,EAAE,0BAA0B;gBACnC,SAAS,EAAE,QAAQ;aACpB,CAAC;SACH,CAAC,CAAC,CAAC;IACN,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QAC3B,QAAQ,EAAE;YACR,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,uBAAuB;YACnF,IAAI,EAAE;gBACJ,OAAO,EAAE,SAAS,CAAC;oBACjB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM;oBAC9D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM;oBAClC,YAAY,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;oBAC1E,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;iBAC5B,CAAC;aACH;SACF;KACF,CAAC,CAAC,CAAC;IACJ,OAAO,QAAQ,CACb,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAC1C,+BAA+B,EAC/B,CAAC,CAAC,OAAO,IAAI,IAAI,EACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EACd,MAAM,CACP,CAAC;AACJ,CAAC;AAED,gEAAgE;AAEhE,MAAM,gBAAgB,GAA2B,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAE5F,MAAM,UAAU,eAAe,CAAC,CAAc;IAC5C,MAAM,KAAK,GAAa;QACtB,eAAe,CAAC;YACd,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;gBACnD,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;aAChD;YACD,WAAW,EAAE,kDAAkD;SAChE,CAAC;QACF,aAAa,CAAC;YACZ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE;YAC1G,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,GAAG,IAAI,EAAE;YAC7I,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE;YAChK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,EAAE;SACzH,CAAC;KACH,CAAC;IACF,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClF,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC1B,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK;YAC7D,KAAK,EAAE;gBACL,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE;oBACP,MAAM,EAAE;wBACN,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE;wBAC7B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;qBAC1C;oBACD,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;iBAClD;aACF;SACF,CAAC,CAAC,CAAC;QACJ,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;IACD,CAAC;QACC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;YACzB,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC5B,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC9C,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC5C,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC/C,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC9C,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;aAC/B;YACD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtB,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO;gBAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;gBAC9B,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO;gBAChD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gBACvB,MAAM,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;aACrC,CAAC,CAAC;YACH,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;gBACrH,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,KAAK;YACrE,SAAS,EAAE,UAAU;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QAC3B,QAAQ,EAAE;YACR,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB;YAClF,IAAI,EAAE;gBACJ,OAAO,EAAE,SAAS,CAAC;oBACjB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe;oBACtG,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe;oBACpH,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY;oBACvF,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;iBACzD,CAAC;aACH;SACF;KACF,CAAC,CAAC,CAAC;IACJ,OAAO,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,8BAA8B,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AAC7H,CAAC;AAED,qEAAqE;AAErE,MAAM,UAAU,eAAe,CAAC,CAAc;IAC5C,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC;IACvB,MAAM,KAAK,GAAa;QACtB,eAAe,CAAC;YACd,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;gBAC5C,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE;gBAC9C,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;aAC3C;YACD,WAAW,EAAE,0EAA0E;SACxF,CAAC;QACF,aAAa,CAAC;YACZ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE;YAC1D,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAG,EAAE,CAAC,IAAI,GAAG,IAAI,EAAE;YAChF,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE;SAC1D,CAAC;QACF,cAAc,CAAC;YACb,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7B,IAAI,EAAE,CAAC,CAAC,KAAK;gBACb,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,QAAQ,GAAG,MAAM,GAAG,CAAC,CAAC,MAAM;gBAC5C,KAAK,EAAE,CAAC,CAAC,UAAU;aACpB,CAAC,CAAC;YACH,SAAS,EAAE,eAAe;SAC3B,CAAC;KACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QAC3B,QAAQ,EAAE;YACR,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB;YAClF,IAAI,EAAE;gBACJ,OAAO,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACnG;SACF;KACF,CAAC,CAAC,CAAC;IACJ,OAAO,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,8BAA8B,EAAE,EAAE,CAAC,OAAO,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AAC7H,CAAC;AAED,sEAAsE;AAEtE,MAAM,UAAU,cAAc,CAAC,CAAa;IAC1C,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IACjB,MAAM,KAAK,GAAa;QACtB,eAAe,CAAC;YACd,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACtD,WAAW,EAAE,6CAA6C;SAC3D,CAAC;QACF,aAAa,CAAC;YACZ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE;YACpG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,gBAAgB,GAAG,IAAI,EAAE;YACvG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE;YACvD,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE;YACtD,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE;YACtD,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE;SAC7D,CAAC;KACH,CAAC;IACF,CAAC;QACC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;YACzB,OAAO,EAAE;gBACP,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE;gBAChC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC5B,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC5B,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC3B,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;aAC/B;YACD,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtB,QAAQ,EAAE,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtF,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM;aACxF,CAAC,CAAC;YACH,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACjH,SAAS,EAAE,gBAAgB;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;YACxB,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/B,IAAI,EAAE,CAAC,CAAC,QAAQ;gBAChB,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,OAAO;gBAC3C,KAAK,EAAE,CAAC,CAAC,IAAI;aACd,CAAC,CAAC;YACH,SAAS,EAAE,OAAO;SACnB,CAAC,CAAC,CAAC;IACN,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QAC7B,QAAQ,EAAE;YACR,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,+BAA+B;YAC3F,IAAI,EAAE;gBACJ,OAAO,EAAE,SAAS,CAAC;oBACjB,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;oBACxE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS;iBACzE,CAAC;aACH;SACF;KACF,CAAC,CAAC,CAAC;IACJ,OAAO,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,EAAE,uCAAuC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AAChH,CAAC;AAED,mEAAmE;AAEnE,MAAM,UAAU,eAAe,CAAC,CAAc;IAC5C,MAAM,KAAK,GAAa;QACtB,eAAe,CAAC;YACd,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE;gBAC9C,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;gBAC1C,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE;aACrE;YACD,WAAW,EAAE,0DAA0D;SACxE,CAAC;QACF,aAAa,CAAC;YACZ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;YACrD,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,GAAG,KAAK,EAAE;YAC1F,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAC3D,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;SAClF,CAAC;KACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QAC3B,QAAQ,EAAE;YACR,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB;YAClF,IAAI,EAAE;gBACJ,OAAO,EAAE,SAAS,CAAC;oBACjB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa;oBAC9E,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;iBAC/E,CAAC;aACH;SACF;KACF,CAAC,CAAC,CAAC;IACJ,OAAO,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,WAAW,GAAG,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AAC7H,CAAC;AAED,oDAAoD;AAEpD,MAAM,UAAU,mBAAmB,CAAC,CAAkB;IACpD,MAAM,KAAK,GAAa;QACtB,eAAe,CAAC;YACd,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE;gBAC9C,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;aAC3C;YACD,WAAW,EAAE,6DAA6D;SAC3E,CAAC;QACF,aAAa,CAAC;YACZ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE;YACvF,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;YACrD,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,QAAQ,GAAG,IAAI,EAAE;YAClE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE;SAC/F,CAAC;KACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;QAC3B,QAAQ,EAAE;YACR,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,2BAA2B;YACvF,IAAI,EAAE;gBACJ,OAAO,EAAE,SAAS,CAAC;oBACjB,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBAC9D,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACzD,CAAC;aACH;SACF;KACF,CAAC,CAAC,CAAC;IACJ,OAAO,QAAQ,CAAC,QAAQ,EAAE,mCAAmC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"trendDocs.js","sourceRoot":"","sources":["../../src/render/trendDocs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"trendMiscPortDocs.d.ts","sourceRoot":"","sources":["../../src/render/trendMiscPortDocs.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACf,MAAM,oBAAoB,CAAC;AAoE5B,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAqChE;AAID,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAmD1D;AAID,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CA6E1E;AAID,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAwC5D;AAID,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAyC5D;AAID,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAoD5E;AAID,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CA2BtE;AAID,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAsCpE"}
1
+ {"version":3,"file":"trendMiscPortDocs.d.ts","sourceRoot":"","sources":["../../src/render/trendMiscPortDocs.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACf,MAAM,oBAAoB,CAAC;AA0B5B,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAsChE;AAID,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAoD1D;AAID,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CA8E1E;AAID,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAyC5D;AAID,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CA0C5D;AAID,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAqD5E;AAID,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CA4BtE;AAID,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAuCpE"}
@@ -6,54 +6,19 @@
6
6
  * 复制文本一律 buildDataText(#77 契约):stat 投影 metrics 只收确定数字。
7
7
  * 本层不做取数(数据由 render/trendMiscPort.ts 备齐),不返空(缺失由数据层抛 missing-data)。
8
8
  */
9
- import { blocksCss, renderChartBlock, renderCopyBlock, renderDataTable, renderDisclosure, renderKpiGrid, renderListRows, renderPageShell, renderParamForm, } from 'base-paint/blocks';
10
- import { buildChartsHelpersJs, buildDataText, buildSharedHelpersJs, buildStyleSheet, fillTemplate } from 'base-paint';
9
+ import { renderChartBlock, renderDataTable, renderDisclosure, renderKpiGrid, renderListRows, renderParamForm, } from 'base-paint/blocks';
10
+ import { assembleDocPage, metricsOf } from '../shared/docPage.js';
11
+ import { dataCopyArea } from '../shared/copyArea.js';
11
12
  /** envelope 头(值冻结对齐 cli/keys.ts ENVELOPE_VERSION/CALORIE_SKILL;测试钉死一致)。 */
12
13
  const DOC_VERSION = '0.1.0';
13
14
  const DOC_SKILL = 'calorie';
14
- /** 内容页壳(裸标记+CONTENT 槽;包裹约定:资产裸文本+填充器包裹,标记不得预包裹)。
15
- * wrap ilife-page 兼容既有 --html 断言。 */
16
- const DOC_SHELL = '<!doctype html>\n<html lang="zh-CN">\n<head>\n<meta charset="utf-8">\n' +
17
- '<meta name="viewport" content="width=device-width,initial-scale=1">\n' +
18
- '<title>卡路里·趋势其他移植</title>\n<!--SHARED-CSS-->\n</head>\n<body>\n' +
19
- '<div class="wrap ilife-page">\n<!--CONTENT-->\n</div>\n<!--SHARED-HELPERS-->\n</body>\n</html>';
20
- /** 图表页壳(多一个 CHARTS-HELPERS 标记,图表 CSS 由 charts helpers 运行时注入)。 */
21
- const DOC_SHELL_CHARTS = '<!doctype html>\n<html lang="zh-CN">\n<head>\n<meta charset="utf-8">\n' +
22
- '<meta name="viewport" content="width=device-width,initial-scale=1">\n' +
23
- '<title>卡路里·趋势其他移植</title>\n<!--SHARED-CSS-->\n</head>\n<body>\n' +
24
- '<div class="wrap ilife-page">\n<!--CONTENT-->\n</div>\n<!--SHARED-HELPERS-->\n<!--CHARTS-HELPERS-->\n</body>\n</html>';
25
- function assemble(title, eyebrow, subtitle, content, charts) {
26
- const assets = {
27
- sharedCssText: buildStyleSheet().css + '\n' + blocksCss(),
28
- sharedHelpersJs: buildSharedHelpersJs(),
29
- };
30
- if (charts)
31
- assets.chartsHelpersJs = buildChartsHelpersJs();
32
- const body = renderPageShell({
33
- title,
34
- ...(eyebrow ? { eyebrow } : {}),
35
- ...(subtitle ? { subtitle } : {}),
36
- content,
37
- });
38
- return fillTemplate({ template: charts ? DOC_SHELL_CHARTS : DOC_SHELL, assets, content: body }).html;
39
- }
40
- function copyBlock(title, input) {
41
- return renderCopyBlock({ title, dataText: buildDataText(input) });
42
- }
15
+ /** 本文件各页共用的 head 标题(整页模板住 `src/shared/docPage.ts`,标题走参数)。 */
16
+ const DOC_TITLE = '卡路里·趋势其他移植';
43
17
  function fmt(n) {
44
18
  if (n === null || n === undefined)
45
19
  return '—';
46
20
  return String(n);
47
21
  }
48
- /** 复制投影 stat-metrics 只收确定数字(冻结口径:null/undefined 不进投影)。 */
49
- function metricsOf(obj) {
50
- const out = {};
51
- for (const [k, v] of Object.entries(obj)) {
52
- if (v !== null && v !== undefined)
53
- out[k] = v;
54
- }
55
- return out;
56
- }
57
22
  function windowForm(start, end, extra) {
58
23
  return renderParamForm({
59
24
  fields: [
@@ -80,7 +45,7 @@ export function buildCalorieTrendDoc(v) {
80
45
  title: '每日热量',
81
46
  input: { items: v.data.series.map((d) => ({ label: d.date.slice(5), value: d.calorie })) },
82
47
  }),
83
- copyBlock('复制数据', {
48
+ dataCopyArea('复制数据', {
84
49
  envelope: {
85
50
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.calorie-trend',
86
51
  data: {
@@ -94,7 +59,14 @@ export function buildCalorieTrendDoc(v) {
94
59
  },
95
60
  }),
96
61
  ];
97
- return assemble('热量趋势 ' + v.start + ' ~ ' + v.end, 'calorie.view.calorie-trend · 趋势其他移植域', '日序列+趋势方向+达标统计(空窗阻断,不编数)', parts.join(''), true);
62
+ return assembleDocPage({
63
+ docTitle: DOC_TITLE,
64
+ title: '热量趋势 ' + v.start + ' ~ ' + v.end,
65
+ eyebrow: 'calorie.view.calorie-trend · 趋势其他移植域',
66
+ subtitle: '日序列+趋势方向+达标统计(空窗阻断,不编数)',
67
+ content: parts.join(''),
68
+ charts: true,
69
+ });
98
70
  }
99
71
  /* ── 整体趋势(long_trend:体重+热量双序列) ── */
100
72
  export function buildLongTrendDoc(v) {
@@ -133,7 +105,7 @@ export function buildLongTrendDoc(v) {
133
105
  caption: '逐日明细(' + v.start + ' ~ ' + v.end + ')',
134
106
  emptyText: '本窗无明细',
135
107
  }));
136
- parts.push(copyBlock('复制数据', {
108
+ parts.push(dataCopyArea('复制数据', {
137
109
  envelope: {
138
110
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.long-trend',
139
111
  data: {
@@ -141,7 +113,14 @@ export function buildLongTrendDoc(v) {
141
113
  },
142
114
  },
143
115
  }));
144
- return assemble('整体趋势(' + v.windowDays + ' 天)', 'calorie.view.long-trend · 趋势其他移植域', '体重+热量双序列(称重不足 2 次则体重变化明示缺失)', parts.join(''), charts);
116
+ return assembleDocPage({
117
+ docTitle: DOC_TITLE,
118
+ title: '整体趋势(' + v.windowDays + ' 天)',
119
+ eyebrow: 'calorie.view.long-trend · 趋势其他移植域',
120
+ subtitle: '体重+热量双序列(称重不足 2 次则体重变化明示缺失)',
121
+ content: parts.join(''),
122
+ charts,
123
+ });
145
124
  }
146
125
  /* ── 营养分析(nutrition_analysis:宏量占比+微量 vs 推荐+规则建议) ── */
147
126
  export function buildNutritionAnalysisDoc(v) {
@@ -200,7 +179,7 @@ export function buildNutritionAnalysisDoc(v) {
200
179
  items: v.advice.map((a, i) => ({ left: String(i + 1), main: a, right: '' })),
201
180
  }),
202
181
  }));
203
- parts.push(copyBlock('复制数据', {
182
+ parts.push(dataCopyArea('复制数据', {
204
183
  envelope: {
205
184
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.nutrition-analysis',
206
185
  data: {
@@ -214,7 +193,14 @@ export function buildNutritionAnalysisDoc(v) {
214
193
  },
215
194
  },
216
195
  }));
217
- return assemble('营养分析 ' + v.start + ' ~ ' + v.end, 'calorie.view.nutrition-analysis · 趋势其他移植域', '配比+微量+规则建议(建议阈值见数据层注释,不编造结论)', parts.join(''), charts);
196
+ return assembleDocPage({
197
+ docTitle: DOC_TITLE,
198
+ title: '营养分析 ' + v.start + ' ~ ' + v.end,
199
+ eyebrow: 'calorie.view.nutrition-analysis · 趋势其他移植域',
200
+ subtitle: '配比+微量+规则建议(建议阈值见数据层注释,不编造结论)',
201
+ content: parts.join(''),
202
+ charts,
203
+ });
218
204
  }
219
205
  /* ── 每日六因素(six_factors) ── */
220
206
  export function buildSixFactorsDoc(v) {
@@ -233,7 +219,7 @@ export function buildSixFactorsDoc(v) {
233
219
  caption: '六因素明细(' + v.date + ',得分 ' + v.score + '/6)',
234
220
  emptyText: '当日无因素数据',
235
221
  }),
236
- copyBlock('复制数据', {
222
+ dataCopyArea('复制数据', {
237
223
  envelope: {
238
224
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.six-factors',
239
225
  data: {
@@ -250,7 +236,14 @@ export function buildSixFactorsDoc(v) {
250
236
  },
251
237
  }),
252
238
  ];
253
- return assemble('每日六因素 ' + v.date, 'calorie.view.six-factors · 趋势其他移植域', '热量/蛋白/饮水/运动/称重/三餐(无目标项明示,不编数)', parts.join(''), false);
239
+ return assembleDocPage({
240
+ docTitle: DOC_TITLE,
241
+ title: '每日六因素 ' + v.date,
242
+ eyebrow: 'calorie.view.six-factors · 趋势其他移植域',
243
+ subtitle: '热量/蛋白/饮水/运动/称重/三餐(无目标项明示,不编数)',
244
+ content: parts.join(''),
245
+ charts: false,
246
+ });
254
247
  }
255
248
  /* ── 数据健康检查(lint_health) ── */
256
249
  export function buildLintHealthDoc(v) {
@@ -272,7 +265,7 @@ export function buildLintHealthDoc(v) {
272
265
  caption: '健康检查明细(只读体检,不写库)',
273
266
  emptyText: '无检查项',
274
267
  }),
275
- copyBlock('复制数据', {
268
+ dataCopyArea('复制数据', {
276
269
  envelope: {
277
270
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.lint-health',
278
271
  data: {
@@ -287,7 +280,14 @@ export function buildLintHealthDoc(v) {
287
280
  },
288
281
  }),
289
282
  ];
290
- return assemble('数据健康检查', 'calorie.view.lint-health · 趋势其他移植域', '未匹配库/零负热量/未来日期/疑似重复(只读,不写库)', parts.join(''), false);
283
+ return assembleDocPage({
284
+ docTitle: DOC_TITLE,
285
+ title: '数据健康检查',
286
+ eyebrow: 'calorie.view.lint-health · 趋势其他移植域',
287
+ subtitle: '未匹配库/零负热量/未来日期/疑似重复(只读,不写库)',
288
+ content: parts.join(''),
289
+ charts: false,
290
+ });
291
291
  }
292
292
  /* ── 批量导入预览(batch_import_preview) ── */
293
293
  export function buildBatchImportPreviewDoc(v) {
@@ -325,7 +325,7 @@ export function buildBatchImportPreviewDoc(v) {
325
325
  }),
326
326
  }));
327
327
  }
328
- parts.push(copyBlock('复制数据', {
328
+ parts.push(dataCopyArea('复制数据', {
329
329
  envelope: {
330
330
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.batch-import-preview',
331
331
  data: {
@@ -335,7 +335,14 @@ export function buildBatchImportPreviewDoc(v) {
335
335
  },
336
336
  },
337
337
  }));
338
- return assemble('批量导入预览', 'calorie.view.batch-import-preview · 趋势其他移植域', '库匹配+合计试算(仅预览,不写库;确认后走 diet.batch 写入)', parts.join(''), false);
338
+ return assembleDocPage({
339
+ docTitle: DOC_TITLE,
340
+ title: '批量导入预览',
341
+ eyebrow: 'calorie.view.batch-import-preview · 趋势其他移植域',
342
+ subtitle: '库匹配+合计试算(仅预览,不写库;确认后走 diet.batch 写入)',
343
+ content: parts.join(''),
344
+ charts: false,
345
+ });
339
346
  }
340
347
  /* ── 落地训练进度(process_progress) ── */
341
348
  export function buildProcessProgressDoc(v) {
@@ -346,7 +353,7 @@ export function buildProcessProgressDoc(v) {
346
353
  { label: '近7天运动', value: String(v.sessions7d), unit: '次', detail: v.start + ' ~ ' + v.end },
347
354
  { label: '近7天时长', value: String(v.minutes7d), unit: '分钟' },
348
355
  ]),
349
- copyBlock('复制数据', {
356
+ dataCopyArea('复制数据', {
350
357
  envelope: {
351
358
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.process-progress',
352
359
  data: {
@@ -358,7 +365,14 @@ export function buildProcessProgressDoc(v) {
358
365
  },
359
366
  }),
360
367
  ];
361
- return assemble('落地训练进度', 'calorie.view.process-progress · 趋势其他移植域', '计划配置+近 7 天执行(无计划且无执行即阻断)', parts.join(''), false);
368
+ return assembleDocPage({
369
+ docTitle: DOC_TITLE,
370
+ title: '落地训练进度',
371
+ eyebrow: 'calorie.view.process-progress · 趋势其他移植域',
372
+ subtitle: '计划配置+近 7 天执行(无计划且无执行即阻断)',
373
+ content: parts.join(''),
374
+ charts: false,
375
+ });
362
376
  }
363
377
  /* ── 复盘报告(review_template) ── */
364
378
  export function buildReviewTemplateDoc(v) {
@@ -379,7 +393,7 @@ export function buildReviewTemplateDoc(v) {
379
393
  items: v.points.map((p, i) => ({ left: String(i + 1), main: p, right: '' })),
380
394
  }),
381
395
  }),
382
- copyBlock('复制数据', {
396
+ dataCopyArea('复制数据', {
383
397
  envelope: {
384
398
  version: DOC_VERSION, skill: DOC_SKILL, shape: 'stat', key: 'calorie.view.review-template',
385
399
  data: {
@@ -392,6 +406,13 @@ export function buildReviewTemplateDoc(v) {
392
406
  },
393
407
  }),
394
408
  ];
395
- return assemble('复盘报告 ' + v.start + ' ~ ' + v.end, 'calorie.view.review-template · 趋势其他移植域', '三面小结+派生要点(要点为规则输出,非 AI 建议)', parts.join(''), false);
409
+ return assembleDocPage({
410
+ docTitle: DOC_TITLE,
411
+ title: '复盘报告 ' + v.start + ' ~ ' + v.end,
412
+ eyebrow: 'calorie.view.review-template · 趋势其他移植域',
413
+ subtitle: '三面小结+派生要点(要点为规则输出,非 AI 建议)',
414
+ content: parts.join(''),
415
+ charts: false,
416
+ });
396
417
  }
397
418
  //# sourceMappingURL=trendMiscPortDocs.js.map