skill-home 0.3.54 → 0.3.56
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.
- package/dist/cli/cmd_read.js +151 -116
- package/dist/cli/cmd_read.js.map +1 -1
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +2 -1
- package/dist/cli/config.js.map +1 -1
- package/dist/entries/catalog.generated.d.ts +11 -0
- package/dist/entries/catalog.generated.d.ts.map +1 -0
- package/dist/entries/catalog.generated.js +10 -0
- package/dist/entries/catalog.generated.js.map +1 -0
- package/dist/entries/en.d.ts +2162 -0
- package/dist/entries/en.d.ts.map +1 -0
- package/dist/entries/en.js +2234 -0
- package/dist/entries/en.js.map +1 -0
- package/dist/entries/index.d.ts +15 -0
- package/dist/entries/index.d.ts.map +1 -0
- package/dist/entries/index.js +15 -0
- package/dist/entries/index.js.map +1 -0
- package/dist/entries/zh.d.ts +2162 -0
- package/dist/entries/zh.d.ts.map +1 -0
- package/dist/entries/zh.js +2234 -0
- package/dist/entries/zh.js.map +1 -0
- package/dist/express/pages/express.d.ts.map +1 -1
- package/dist/express/pages/express.js +55 -39
- package/dist/express/pages/express.js.map +1 -1
- package/dist/express/pages/list.d.ts.map +1 -1
- package/dist/express/pages/list.js +61 -46
- package/dist/express/pages/list.js.map +1 -1
- package/dist/express/pages/missing.d.ts.map +1 -1
- package/dist/express/pages/missing.js +52 -34
- package/dist/express/pages/missing.js.map +1 -1
- package/dist/express/pages/stock.d.ts.map +1 -1
- package/dist/express/pages/stock.js +79 -41
- package/dist/express/pages/stock.js.map +1 -1
- package/dist/express/shopping.d.ts.map +1 -1
- package/dist/express/shopping.js +29 -27
- package/dist/express/shopping.js.map +1 -1
- package/dist/family/care.d.ts.map +1 -1
- package/dist/family/care.js +31 -27
- package/dist/family/care.js.map +1 -1
- package/dist/family/pages/family_borrow.d.ts.map +1 -1
- package/dist/family/pages/family_borrow.js +135 -69
- package/dist/family/pages/family_borrow.js.map +1 -1
- package/dist/family/pages/family_members.d.ts.map +1 -1
- package/dist/family/pages/family_members.js +81 -34
- package/dist/family/pages/family_members.js.map +1 -1
- package/dist/fetch/backup.d.ts.map +1 -1
- package/dist/fetch/backup.js +14 -5
- package/dist/fetch/backup.js.map +1 -1
- package/dist/fetch/db.d.ts +23 -0
- package/dist/fetch/db.d.ts.map +1 -1
- package/dist/fetch/db.js +28 -9
- package/dist/fetch/db.js.map +1 -1
- package/dist/fetch/domains.d.ts.map +1 -1
- package/dist/fetch/domains.js +28 -24
- package/dist/fetch/domains.js.map +1 -1
- package/dist/fetch/masterKey.d.ts.map +1 -1
- package/dist/fetch/masterKey.js +2 -1
- package/dist/fetch/masterKey.js.map +1 -1
- package/dist/health.d.ts.map +1 -1
- package/dist/health.js +89 -68
- package/dist/health.js.map +1 -1
- package/dist/help/helpFile.d.ts +5 -5
- package/dist/help/helpFile.d.ts.map +1 -1
- package/dist/help/helpFile.js +47 -34
- package/dist/help/helpFile.js.map +1 -1
- package/dist/help/lookup.d.ts.map +1 -1
- package/dist/help/lookup.js +31 -25
- package/dist/help/lookup.js.map +1 -1
- package/dist/help/output.d.ts +3 -0
- package/dist/help/output.d.ts.map +1 -1
- package/dist/help/output.js +7 -1
- package/dist/help/output.js.map +1 -1
- package/dist/items/add.d.ts.map +1 -1
- package/dist/items/add.js +5 -4
- package/dist/items/add.js.map +1 -1
- package/dist/items/detail.d.ts.map +1 -1
- package/dist/items/detail.js +3 -2
- package/dist/items/detail.js.map +1 -1
- package/dist/items/inventory.d.ts.map +1 -1
- package/dist/items/inventory.js +7 -6
- package/dist/items/inventory.js.map +1 -1
- package/dist/items/pages/add_form.d.ts.map +1 -1
- package/dist/items/pages/add_form.js +26 -25
- package/dist/items/pages/add_form.js.map +1 -1
- package/dist/items/pages/browse.d.ts.map +1 -1
- package/dist/items/pages/browse.js +15 -14
- package/dist/items/pages/browse.js.map +1 -1
- package/dist/items/pages/category_manage.d.ts.map +1 -1
- package/dist/items/pages/category_manage.js +27 -27
- package/dist/items/pages/category_manage.js.map +1 -1
- package/dist/items/pages/confirm.d.ts.map +1 -1
- package/dist/items/pages/confirm.js +22 -21
- package/dist/items/pages/confirm.js.map +1 -1
- package/dist/items/pages/detail.d.ts.map +1 -1
- package/dist/items/pages/detail.js +32 -31
- package/dist/items/pages/detail.js.map +1 -1
- package/dist/items/pages/duplicates.d.ts.map +1 -1
- package/dist/items/pages/duplicates.js +15 -14
- package/dist/items/pages/duplicates.js.map +1 -1
- package/dist/items/pages/history.d.ts.map +1 -1
- package/dist/items/pages/history.js +45 -41
- package/dist/items/pages/history.js.map +1 -1
- package/dist/items/pages/inventory_diff.d.ts.map +1 -1
- package/dist/items/pages/inventory_diff.js +23 -20
- package/dist/items/pages/inventory_diff.js.map +1 -1
- package/dist/items/pages/inventory_records.d.ts.map +1 -1
- package/dist/items/pages/inventory_records.js +29 -26
- package/dist/items/pages/inventory_records.js.map +1 -1
- package/dist/items/pages/inventory_round.d.ts.map +1 -1
- package/dist/items/pages/inventory_round.js +46 -34
- package/dist/items/pages/inventory_round.js.map +1 -1
- package/dist/items/pages/locate.d.ts.map +1 -1
- package/dist/items/pages/locate.js +20 -19
- package/dist/items/pages/locate.js.map +1 -1
- package/dist/items/pages/move_checklist.d.ts.map +1 -1
- package/dist/items/pages/move_checklist.js +28 -25
- package/dist/items/pages/move_checklist.js.map +1 -1
- package/dist/items/pages/photo_wall.d.ts.map +1 -1
- package/dist/items/pages/photo_wall.js +25 -25
- package/dist/items/pages/photo_wall.js.map +1 -1
- package/dist/items/pages/photos.d.ts.map +1 -1
- package/dist/items/pages/photos.js +29 -31
- package/dist/items/pages/photos.js.map +1 -1
- package/dist/items/pages/receipt.d.ts.map +1 -1
- package/dist/items/pages/receipt.js +58 -52
- package/dist/items/pages/receipt.js.map +1 -1
- package/dist/items/pages/relations.d.ts.map +1 -1
- package/dist/items/pages/relations.js +22 -23
- package/dist/items/pages/relations.js.map +1 -1
- package/dist/items/pages/search_list.d.ts.map +1 -1
- package/dist/items/pages/search_list.js +17 -16
- package/dist/items/pages/search_list.js.map +1 -1
- package/dist/items/pages/tag_manage.d.ts.map +1 -1
- package/dist/items/pages/tag_manage.js +51 -44
- package/dist/items/pages/tag_manage.js.map +1 -1
- package/dist/items/pages/undo_select.d.ts.map +1 -1
- package/dist/items/pages/undo_select.js +25 -24
- package/dist/items/pages/undo_select.js.map +1 -1
- package/dist/items/search.d.ts.map +1 -1
- package/dist/items/search.js +4 -3
- package/dist/items/search.js.map +1 -1
- package/dist/items/tag.d.ts.map +1 -1
- package/dist/items/tag.js +15 -13
- package/dist/items/tag.js.map +1 -1
- package/dist/items/update.d.ts.map +1 -1
- package/dist/items/update.js +24 -23
- package/dist/items/update.js.map +1 -1
- package/dist/outfit/outfit.d.ts.map +1 -1
- package/dist/outfit/outfit.js +70 -31
- package/dist/outfit/outfit.js.map +1 -1
- package/dist/outfit/pages/outfit_picker.d.ts.map +1 -1
- package/dist/outfit/pages/outfit_picker.js +89 -40
- package/dist/outfit/pages/outfit_picker.js.map +1 -1
- package/dist/outfit/pages/travel_trip.d.ts.map +1 -1
- package/dist/outfit/pages/travel_trip.js +82 -38
- package/dist/outfit/pages/travel_trip.js.map +1 -1
- package/dist/outfit/pages/trip_outfit_plan.d.ts.map +1 -1
- package/dist/outfit/pages/trip_outfit_plan.js +87 -48
- package/dist/outfit/pages/trip_outfit_plan.js.map +1 -1
- package/dist/outfit/pages/wardrobe_analyze.d.ts.map +1 -1
- package/dist/outfit/pages/wardrobe_analyze.js +85 -36
- package/dist/outfit/pages/wardrobe_analyze.js.map +1 -1
- package/dist/outfit/pages/wardrobe_season.d.ts.map +1 -1
- package/dist/outfit/pages/wardrobe_season.js +101 -40
- package/dist/outfit/pages/wardrobe_season.js.map +1 -1
- package/dist/outfit/trip.d.ts.map +1 -1
- package/dist/outfit/trip.js +35 -14
- package/dist/outfit/trip.js.map +1 -1
- package/dist/policy/category.d.ts.map +1 -1
- package/dist/policy/category.js +2 -1
- package/dist/policy/category.js.map +1 -1
- package/dist/policy/item.d.ts.map +1 -1
- package/dist/policy/item.js +3 -2
- package/dist/policy/item.js.map +1 -1
- package/dist/policy/routes.en.generated.d.ts +18 -0
- package/dist/policy/routes.en.generated.d.ts.map +1 -0
- package/dist/policy/routes.en.generated.js +14 -0
- package/dist/policy/routes.en.generated.js.map +1 -0
- package/dist/policy/wakewords.d.ts.map +1 -1
- package/dist/policy/wakewords.js +20 -1
- package/dist/policy/wakewords.js.map +1 -1
- package/dist/receipt/pages/accounts.d.ts.map +1 -1
- package/dist/receipt/pages/accounts.js +62 -36
- package/dist/receipt/pages/accounts.js.map +1 -1
- package/dist/receipt/pages/certificates.d.ts.map +1 -1
- package/dist/receipt/pages/certificates.js +74 -54
- package/dist/receipt/pages/certificates.js.map +1 -1
- package/dist/receipt/pages/purchase_records.d.ts.map +1 -1
- package/dist/receipt/pages/purchase_records.js +82 -59
- package/dist/receipt/pages/purchase_records.js.map +1 -1
- package/dist/receipt/pages/warranty.d.ts.map +1 -1
- package/dist/receipt/pages/warranty.js +36 -24
- package/dist/receipt/pages/warranty.js.map +1 -1
- package/dist/receipt/ticket.d.ts.map +1 -1
- package/dist/receipt/ticket.js +65 -64
- package/dist/receipt/ticket.js.map +1 -1
- package/dist/render/copyArea.d.ts.map +1 -1
- package/dist/render/copyArea.js +39 -26
- package/dist/render/copyArea.js.map +1 -1
- package/dist/render/html.d.ts.map +1 -1
- package/dist/render/html.js +19 -4
- package/dist/render/html.js.map +1 -1
- package/dist/render/views.d.ts.map +1 -1
- package/dist/render/views.js +4 -3
- package/dist/render/views.js.map +1 -1
- package/dist/setup/pages/backup_receipt.d.ts.map +1 -1
- package/dist/setup/pages/backup_receipt.js +85 -35
- package/dist/setup/pages/backup_receipt.js.map +1 -1
- package/dist/setup/pages/first_use_wizard.d.ts.map +1 -1
- package/dist/setup/pages/first_use_wizard.js +100 -33
- package/dist/setup/pages/first_use_wizard.js.map +1 -1
- package/dist/setup/pages/health_report.d.ts.map +1 -1
- package/dist/setup/pages/health_report.js +74 -37
- package/dist/setup/pages/health_report.js.map +1 -1
- package/dist/setup/pages/import_restore.d.ts.map +1 -1
- package/dist/setup/pages/import_restore.js +79 -34
- package/dist/setup/pages/import_restore.js.map +1 -1
- package/dist/shared/params.d.ts.map +1 -1
- package/dist/shared/params.js +4 -3
- package/dist/shared/params.js.map +1 -1
- package/dist/space/location.d.ts.map +1 -1
- package/dist/space/location.js +29 -19
- package/dist/space/location.js.map +1 -1
- package/dist/space/pages/fixed_spot.d.ts.map +1 -1
- package/dist/space/pages/fixed_spot.js +51 -42
- package/dist/space/pages/fixed_spot.js.map +1 -1
- package/dist/space/pages/location_manage.d.ts.map +1 -1
- package/dist/space/pages/location_manage.js +59 -48
- package/dist/space/pages/location_manage.js.map +1 -1
- package/dist/space/pages/space_view.d.ts.map +1 -1
- package/dist/space/pages/space_view.js +67 -70
- package/dist/space/pages/space_view.js.map +1 -1
- package/dist/space/pages/suggest_storage.d.ts.map +1 -1
- package/dist/space/pages/suggest_storage.js +78 -64
- package/dist/space/pages/suggest_storage.js.map +1 -1
- package/dist/stats/pages/expiring.d.ts.map +1 -1
- package/dist/stats/pages/expiring.js +99 -61
- package/dist/stats/pages/expiring.js.map +1 -1
- package/dist/stats/pages/idle.d.ts.map +1 -1
- package/dist/stats/pages/idle.js +95 -59
- package/dist/stats/pages/idle.js.map +1 -1
- package/dist/stats/pages/inventory_stat.d.ts.map +1 -1
- package/dist/stats/pages/inventory_stat.js +98 -47
- package/dist/stats/pages/inventory_stat.js.map +1 -1
- package/dist/stats/pages/overview.d.ts.map +1 -1
- package/dist/stats/pages/overview.js +137 -70
- package/dist/stats/pages/overview.js.map +1 -1
- package/dist/stats/stats.d.ts.map +1 -1
- package/dist/stats/stats.js +7 -4
- package/dist/stats/stats.js.map +1 -1
- package/package.json +4 -3
|
@@ -7,6 +7,26 @@
|
|
|
7
7
|
// 数据形状声明:PAGE_META(主命令/形状/场景预设示例/服务场景清单)。
|
|
8
8
|
import { readFileSync } from 'node:fs';
|
|
9
9
|
import { fillTemplate, escapeHtml, homeCopyArea, homeCopyLog, homeNowStamp } from '../../render/index.js';
|
|
10
|
+
import { m } from '../../entries/index.js';
|
|
11
|
+
/** 本页可见文案(渲染期取词:写成函数,模块加载时不取词)。 */
|
|
12
|
+
function pageText() {
|
|
13
|
+
return {
|
|
14
|
+
k001: (p0) => m('skill-home.space-pages-space-view.c001', { p0: String(p0) }),
|
|
15
|
+
k002: m('skill-home.space-pages-space-view.c035'),
|
|
16
|
+
k003: m('skill-home.space-pages-space-view.c002'),
|
|
17
|
+
k004: m('skill-home.space-pages-space-view.c003'),
|
|
18
|
+
k005: (p0, p1) => m('skill-home.space-pages-space-view.c004', { p0: String(p0), p1: String(p1) }),
|
|
19
|
+
k006: m('skill-home.space-pages-space-view.c005'),
|
|
20
|
+
k007: m('skill-home.space-pages-space-view.c006'),
|
|
21
|
+
k008: m('skill-home.space-pages-space-view.c007'),
|
|
22
|
+
k009: m('skill-home.space-pages-space-view.c008'),
|
|
23
|
+
k010: m('skill-home.space-pages-space-view.c009'),
|
|
24
|
+
k011: m('skill-home.space-pages-space-view.c010'),
|
|
25
|
+
k012: m('skill-home.space-pages-space-view.c011'),
|
|
26
|
+
k013: m('skill-home.space-pages-space-view.c012'),
|
|
27
|
+
k014: m('skill-home.space-pages-space-view.c013'),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
10
30
|
export const FAMILY = 'space_view';
|
|
11
31
|
export const PAGE_META = {
|
|
12
32
|
domain: 'space',
|
|
@@ -47,110 +67,92 @@ function attr(s) {
|
|
|
47
67
|
return escapeHtml(s).replace(/"/g, '"');
|
|
48
68
|
}
|
|
49
69
|
function hero(view) {
|
|
50
|
-
const
|
|
70
|
+
const L = pageText();
|
|
71
|
+
const at = view.path === '' ? m('skill-home.space-pages-space-view.c014') : m('skill-home.space-pages-space-view.c015', { p0: String(view.path) });
|
|
51
72
|
// 当前层名只由面包屑承担(#817 复评 seq 33:原先那颗徽章与面包屑末段逐字重复);
|
|
52
73
|
// 标题已在模板 h1(空间视图),此处只放路径总数,不重复族名与层名。
|
|
53
|
-
return '<div class="hero" data-need="异常:数据解析失败/数据校验失败">'
|
|
54
|
-
+ '<div class="eyebrow" data-need="当前层名/路径"><span class="chip" data-need="路径总数">共' + view.total + '个位置</span></div>'
|
|
55
|
-
+ '<p class="lead">' + escapeHtml(at) + '</p></div>';
|
|
74
|
+
return '<div class="hero" data-need="异常:数据解析失败/数据校验失败">' + '<div class="eyebrow" data-need="当前层名/路径">' + '<span class="chip" data-need="路径总数">' + L.k001(String(view.total)) + '</span>' + '</div>' + '<p class="lead">' + escapeHtml(at) + '</p>' + '</div>';
|
|
56
75
|
}
|
|
57
76
|
function crumbs(view) {
|
|
58
|
-
const
|
|
59
|
-
|
|
77
|
+
const L = pageText();
|
|
78
|
+
const homePrompt = m('skill-home.space-pages-space-view.c016'); // 按钮写「全屋」,载荷同写「全屋」(#817 复评 seq 33:原先载荷写「顶层」)。
|
|
79
|
+
let html = '<button class="crumb home" data-copy="' + attr(homePrompt) + '" data-need="下钻">' + L.k002 + '</button>';
|
|
60
80
|
for (const c of view.crumbs) {
|
|
61
|
-
const prompt = '
|
|
62
|
-
html += '<span class="arrow"
|
|
63
|
-
+ '" data-need="下钻">' + escapeHtml(c.name) + '</button>';
|
|
81
|
+
const prompt = m('skill-home.space-pages-space-view.c017', { p0: String(c.path) });
|
|
82
|
+
html += '<span class="arrow">' + '›' + '</span>' + '<button class="crumb" data-copy="' + attr(prompt) + '" data-need="下钻">' + escapeHtml(c.name) + '</button>';
|
|
64
83
|
}
|
|
65
84
|
return '<nav class="bread" data-block="fields" data-need="面包屑">' + html + '</nav>';
|
|
66
85
|
}
|
|
67
86
|
function kidsCard(view) {
|
|
87
|
+
const L = pageText();
|
|
68
88
|
if (view.children.length === 0) {
|
|
69
|
-
return '<div hidden
|
|
89
|
+
return '<div hidden>' + '<span data-need="子层">' + '</span>' + '</div>';
|
|
70
90
|
}
|
|
71
91
|
const cards = view.children.map((c) => {
|
|
72
|
-
const
|
|
92
|
+
const L = pageText();
|
|
93
|
+
const prompt = m('skill-home.space-pages-space-view.c018', { p0: String(c.path) });
|
|
73
94
|
// 计数行保持短行;下钻 affordance 由标题 hint 与箭头表达,不挤进计数行。
|
|
74
|
-
const ct = c.empty ? '
|
|
75
|
-
return '<button class="loc' + (c.empty ? ' isempty' : '') + '" data-copy="' + attr(prompt)
|
|
76
|
-
+ '" data-need="下钻"><span class="nm">' + escapeHtml(c.name) + '</span>'
|
|
77
|
-
+ '<span class="ct">' + ct + '</span><span class="go">›</span></button>';
|
|
95
|
+
const ct = c.empty ? m('skill-home.space-pages-space-view.c019') : m('skill-home.space-pages-space-view.c020', { p0: String(c.count) });
|
|
96
|
+
return '<button class="loc' + (c.empty ? ' isempty' : '') + '" data-copy="' + attr(prompt) + '" data-need="下钻">' + '<span class="nm">' + escapeHtml(c.name) + '</span>' + '<span class="ct">' + ct + '</span>' + '<span class="go">' + '›' + '</span>' + '</button>';
|
|
78
97
|
}).join('');
|
|
79
|
-
return '<section class="card" data-block="fields" data-need="子层">'
|
|
80
|
-
+ '<h2>下一层 <span class="hint">点卡片下钻</span></h2>'
|
|
81
|
-
+ '<div class="grid">' + cards + '</div></section>';
|
|
98
|
+
return '<section class="card" data-block="fields" data-need="子层">' + '<h2>' + L.k003 + '<span class="hint">' + L.k004 + '</span>' + '</h2>' + '<div class="grid">' + cards + '</div>' + '</section>';
|
|
82
99
|
}
|
|
83
100
|
function itemsCard(view) {
|
|
101
|
+
const L = pageText();
|
|
84
102
|
if (view.items.length === 0) {
|
|
85
103
|
// 叶子空层:快捷操作无载体,块位以隐藏载体保留(顶层产物即此情形)。
|
|
86
|
-
return '<div hidden
|
|
87
|
-
+ '<span data-need="位置状态(缺省在家)"></span>'
|
|
88
|
-
+ '<span data-need="移"></span><span data-need="补"></span><span data-need="减"></span></div>';
|
|
104
|
+
return '<div hidden>' + '<span data-need="当前层物品(名称/数量/状态)">' + '</span>' + '<span data-need="位置状态(缺省在家)">' + '</span>' + '<span data-need="移">' + '</span>' + '<span data-need="补">' + '</span>' + '<span data-need="减">' + '</span>' + '</div>';
|
|
89
105
|
}
|
|
90
106
|
const cards = view.items.map((it) => {
|
|
91
|
-
const
|
|
92
|
-
const
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
+ '<table class="s" data-need="位置状态(缺省在家)"><tr><td>共' + it.qty + '件,' + escapeHtml(it.status) + '</td></tr></table></div>'
|
|
97
|
-
+ '<div class="qa" data-block="operations">'
|
|
98
|
-
+ '<button class="qb" data-copy="' + attr(mv) + '" data-need="移">移</button>'
|
|
99
|
-
+ '<button class="qb" data-copy="' + attr(add) + '" data-need="补">补</button>'
|
|
100
|
-
+ '<button class="qb" data-copy="' + attr(sub) + '" data-need="减">减</button>'
|
|
101
|
-
+ '</div></div>';
|
|
107
|
+
const L = pageText();
|
|
108
|
+
const mv = m('skill-home.space-pages-space-view.c021', { p0: String(it.name), p1: String(it.id) });
|
|
109
|
+
const add = m('skill-home.space-pages-space-view.c022', { p0: String(it.name), p1: String(it.id) });
|
|
110
|
+
const sub = m('skill-home.space-pages-space-view.c023', { p0: String(it.name), p1: String(it.id) });
|
|
111
|
+
return '<div class="item" data-need="当前层物品(名称/数量/状态)">' + '<div class="inf">' + '<div class="n">' + escapeHtml(it.name) + '</div>' + '<table class="s" data-need="位置状态(缺省在家)">' + '<tr>' + '<td>' + L.k005(String(it.qty), String(escapeHtml(it.status))) + '</td>' + '</tr>' + '</table>' + '</div>' + '<div class="qa" data-block="operations">' + '<button class="qb" data-copy="' + attr(mv) + '" data-need="移">' + L.k006 + '</button>' + '<button class="qb" data-copy="' + attr(add) + '" data-need="补">' + L.k007 + '</button>' + '<button class="qb" data-copy="' + attr(sub) + '" data-need="减">' + L.k008 + '</button>' + '</div>' + '</div>';
|
|
102
112
|
}).join('');
|
|
103
|
-
return '<section class="card" data-block="fields">'
|
|
104
|
-
+ '<h2>本层物品</h2>'
|
|
105
|
-
+ '<div class="items">' + cards + '</div></section>';
|
|
113
|
+
return '<section class="card" data-block="fields">' + '<h2>' + L.k009 + '</h2>' + '<div class="items">' + cards + '</div>' + '</section>';
|
|
106
114
|
}
|
|
107
115
|
function hintsBar(view) {
|
|
116
|
+
const L = pageText();
|
|
108
117
|
if (view.hints.length === 0) {
|
|
109
|
-
return '<div data-block="fields" hidden
|
|
110
|
-
+ '<span data-need="复制收纳建议"></span></div>';
|
|
118
|
+
return '<div data-block="fields" hidden>' + '<span data-need="分层空态提示">' + '</span>' + '<span data-need="复制收纳建议">' + '</span>' + '</div>';
|
|
111
119
|
}
|
|
112
120
|
const chips = view.hints.map((h) => '<span class="hintpath">' + escapeHtml(h) + '</span>').join('');
|
|
113
|
-
const prompt = '
|
|
114
|
-
return '<div class="tip" data-block="fields" data-need="分层空态提示"
|
|
115
|
-
+ '<div class="hintpaths">' + chips + '</div>'
|
|
116
|
-
+ '<button class="btn ghost" data-copy="' + attr(prompt) + '" data-need="复制收纳建议">复制收纳建议</button></div>';
|
|
121
|
+
const prompt = m('skill-home.space-pages-space-view.c024', { p0: String(view.hints[0]) }); // hints[0]=卡上第一个空位置的全路径(#817 复评 seq 33:原先写死「顶层」)。
|
|
122
|
+
return '<div class="tip" data-block="fields" data-need="分层空态提示">' + L.k010 + '<div class="hintpaths">' + chips + '</div>' + '<button class="btn ghost" data-copy="' + attr(prompt) + '" data-need="复制收纳建议">' + L.k011 + '</button>' + '</div>';
|
|
117
123
|
}
|
|
118
124
|
function emptyState(view) {
|
|
125
|
+
const L = pageText();
|
|
119
126
|
const top = view.path === '';
|
|
120
|
-
const guide = top ? '
|
|
121
|
-
: '
|
|
127
|
+
const guide = top ? m('skill-home.space-pages-space-view.c025')
|
|
128
|
+
: m('skill-home.space-pages-space-view.c026');
|
|
122
129
|
const prompt = top
|
|
123
|
-
? '
|
|
124
|
-
: '
|
|
125
|
-
const btnLabel = top ? '
|
|
126
|
-
const need = top ? '
|
|
127
|
-
return '<div class="empty" data-block="fields" data-need="空态:这里还没有东西(全屋与单层两套文案)">'
|
|
128
|
-
+ '<h2>这里还没有东西</h2>' + escapeHtml(guide)
|
|
129
|
-
+ '<div class="actions"><button class="btn" data-copy="' + attr(prompt)
|
|
130
|
-
+ '" data-need="' + need + '">' + btnLabel + '</button></div></div>';
|
|
130
|
+
? m('skill-home.space-pages-space-view.c027')
|
|
131
|
+
: m('skill-home.space-pages-space-view.c028', { p0: String(view.path) });
|
|
132
|
+
const btnLabel = top ? m('skill-home.space-pages-space-view.c029') : m('skill-home.space-pages-space-view.c030');
|
|
133
|
+
const need = top ? m('skill-home.space-pages-space-view.c031') : m('skill-home.space-pages-space-view.c032');
|
|
134
|
+
return '<div class="empty" data-block="fields" data-need="空态:这里还没有东西(全屋与单层两套文案)">' + '<h2>' + L.k012 + '</h2>' + escapeHtml(guide) + '<div class="actions">' + '<button class="btn" data-copy="' + attr(prompt) + '" data-need="' + need + '">' + btnLabel + '</button>' + '</div>' + '</div>';
|
|
131
135
|
}
|
|
132
136
|
function actionsBar(env, ctx) {
|
|
137
|
+
const L = pageText();
|
|
133
138
|
// 可视化标签与必需块登记逐字同写「复制建位置」(#817 复评 seq 33:原先写「建位置」,与空态那颗按钮两个名字)。
|
|
134
|
-
const buildPrompt = '
|
|
135
|
-
return '<div class="actions" data-block="operations">'
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
data: { envelope: env },
|
|
140
|
-
log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
|
|
141
|
-
})
|
|
142
|
-
+ '</div>';
|
|
139
|
+
const buildPrompt = m('skill-home.space-pages-space-view.c033');
|
|
140
|
+
return '<div class="actions" data-block="operations">' + '<button class="btn" data-copy="' + attr(buildPrompt) + '" data-need="复制建位置">' + L.k013 + '</button>' + '<span data-need="复制数据" hidden>' + '</span>' + '<span data-need="复制日志" hidden>' + '</span>' + homeCopyArea({
|
|
141
|
+
data: { envelope: env },
|
|
142
|
+
log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
|
|
143
|
+
}) + '</div>';
|
|
143
144
|
}
|
|
144
145
|
function genericList(items) {
|
|
146
|
+
const L = pageText();
|
|
145
147
|
const cards = items.map((it) => '<div class="item"><div class="inf"><div class="n">'
|
|
146
148
|
+ escapeHtml(String(it.name ?? '')) + '</div></div></div>').join('');
|
|
147
|
-
return '<section class="card" data-block="fields" data-need="当前层物品(名称/数量/状态)">'
|
|
148
|
-
+ '<h2>查找结果</h2><div class="items">' + cards + '</div></section>';
|
|
149
|
+
return '<section class="card" data-block="fields" data-need="当前层物品(名称/数量/状态)">' + '<h2>' + L.k014 + '</h2>' + '<div class="items">' + cards + '</div>' + '</section>';
|
|
149
150
|
}
|
|
150
151
|
// 装配入口:真 envelope(真命令链产出)+本族模板 → 同形整页。
|
|
151
152
|
// fail-closed:模板缺失/标记异常(fillTemplate 内抛)不返空页。
|
|
152
153
|
// 复制区走共用件(卡路里同款三格式+六段日志);`ctx.command` 由交付链供给(含 params),直调缺省按本族主 key。
|
|
153
154
|
export function renderFamilyPage(env, ctx) {
|
|
155
|
+
const L = pageText();
|
|
154
156
|
const template = readFileSync(new URL('../../../templates/space/space_view.html', import.meta.url), 'utf8');
|
|
155
157
|
const data = (env.data ?? {});
|
|
156
158
|
const first = Array.isArray(data.items) && data.items.length > 0
|
|
@@ -160,8 +162,7 @@ export function renderFamilyPage(env, ctx) {
|
|
|
160
162
|
const view = data.items?.[0];
|
|
161
163
|
const hasData = view.children.length > 0 || view.items.length > 0;
|
|
162
164
|
// 空态索引(有数据时空态区不 render,机审仍读原文;空态真 render 由测试空库断言覆盖)。
|
|
163
|
-
const emptyIndex = hasData ? '<div hidden data-block="empty">'
|
|
164
|
-
+ '<span data-need="空态:这里还没有东西(全屋与单层两套文案)"></span></div>' : '';
|
|
165
|
+
const emptyIndex = hasData ? '<div hidden data-block="empty">' + '<span data-need="空态:这里还没有东西(全屋与单层两套文案)">' + '</span>' + '</div>' : '';
|
|
165
166
|
content = hero(view)
|
|
166
167
|
+ '<div data-block="empty" hidden></div><div data-block="status" hidden></div>' + emptyIndex
|
|
167
168
|
+ crumbs(view)
|
|
@@ -171,14 +172,10 @@ export function renderFamilyPage(env, ctx) {
|
|
|
171
172
|
else {
|
|
172
173
|
const items = Array.isArray(data.items) ? data.items : [];
|
|
173
174
|
const view = {
|
|
174
|
-
kind: 'space_view', path: '', name: '
|
|
175
|
+
kind: 'space_view', path: '', name: m('skill-home.space-pages-space-view.c034'), crumbs: [],
|
|
175
176
|
children: [], items: [], hints: [], total: 0,
|
|
176
177
|
};
|
|
177
|
-
content = hero(view)
|
|
178
|
-
+ '<div data-block="empty" hidden></div><div data-block="status" hidden></div>'
|
|
179
|
-
// 找位置信封是扁平结果列表,无子层结构(以空间浏览信封为准,此处置位标记)。
|
|
180
|
-
+ '<div hidden><span data-need="子层"></span></div>'
|
|
181
|
-
+ crumbs(view) + genericList(items) + hintsBar(view) + actionsBar(env, ctx);
|
|
178
|
+
content = hero(view) + '<div data-block="empty" hidden>' + '</div>' + '<div data-block="status" hidden>' + '</div>' + '<div hidden>' + '<span data-need="子层">' + '</span>' + '</div>' + crumbs(view) + genericList(items) + hintsBar(view) + actionsBar(env, ctx);
|
|
182
179
|
}
|
|
183
180
|
return fillTemplate(template, content);
|
|
184
181
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space_view.js","sourceRoot":"","sources":["../../../src/space/pages/space_view.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,EAAE;AACF,sDAAsD;AACtD,6DAA6D;AAC7D,mEAAmE;AACnE,0DAA0D;AAC1D,0CAA0C;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"space_view.js","sourceRoot":"","sources":["../../../src/space/pages/space_view.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest_storage.d.ts","sourceRoot":"","sources":["../../../src/space/pages/suggest_storage.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"suggest_storage.d.ts","sourceRoot":"","sources":["../../../src/space/pages/suggest_storage.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAqC/C,eAAO,MAAM,MAAM,EAAG,iBAA0B,CAAC;AAEjD,eAAO,MAAM,SAAS;;;;;qBAKU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;mBACgB,SAAS;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE;CAC1I,CAAC;AAEX,eAAO,MAAM,eAAe,EAwBvB;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC,CAAC;AAoGF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CA0BvH"}
|
|
@@ -7,6 +7,38 @@
|
|
|
7
7
|
// 数据形状声明:PAGE_META(主命令/形状/场景预设示例/服务场景清单)。
|
|
8
8
|
import { readFileSync } from 'node:fs';
|
|
9
9
|
import { fillTemplate, escapeHtml, homeCopyArea, homeCopyLog, homeNowStamp } from '../../render/index.js';
|
|
10
|
+
import { m } from '../../entries/index.js';
|
|
11
|
+
/** 本页可见文案(渲染期取词:写成函数,模块加载时不取词)。 */
|
|
12
|
+
function pageText() {
|
|
13
|
+
return {
|
|
14
|
+
k001: (p0) => m('skill-home.space-pages-suggest-storage.c001', { p0: String(p0) }),
|
|
15
|
+
k002: m('skill-home.space-pages-suggest-storage.c002'),
|
|
16
|
+
k003: m('skill-home.space-pages-suggest-storage.c003'),
|
|
17
|
+
k004: m('skill-home.space-pages-suggest-storage.c004'),
|
|
18
|
+
k005: m('skill-home.space-pages-suggest-storage.c005'),
|
|
19
|
+
k006: m('skill-home.space-pages-suggest-storage.c006'),
|
|
20
|
+
k007: m('skill-home.space-pages-suggest-storage.c007'),
|
|
21
|
+
k008: m('skill-home.space-pages-suggest-storage.c008'),
|
|
22
|
+
k009: '」',
|
|
23
|
+
k010: m('skill-home.space-pages-suggest-storage.c009'),
|
|
24
|
+
k011: m('skill-home.space-pages-suggest-storage.c010'),
|
|
25
|
+
k012: m('skill-home.space-pages-suggest-storage.c011'),
|
|
26
|
+
k013: m('skill-home.space-pages-suggest-storage.c012'),
|
|
27
|
+
k014: m('skill-home.space-pages-suggest-storage.c013'),
|
|
28
|
+
k015: m('skill-home.space-pages-suggest-storage.c014'),
|
|
29
|
+
k016: m('skill-home.space-pages-suggest-storage.c015'),
|
|
30
|
+
k017: m('skill-home.space-pages-suggest-storage.c016'),
|
|
31
|
+
k018: m('skill-home.space-pages-suggest-storage.c017'),
|
|
32
|
+
k019: ':',
|
|
33
|
+
k020: m('skill-home.space-pages-suggest-storage.c018'),
|
|
34
|
+
k021: m('skill-home.space-pages-suggest-storage.c019'),
|
|
35
|
+
k022: m('skill-home.space-pages-suggest-storage.c020'),
|
|
36
|
+
k023: m('skill-home.space-pages-suggest-storage.c021'),
|
|
37
|
+
k024: m('skill-home.space-pages-suggest-storage.c022'),
|
|
38
|
+
k025: m('skill-home.space-pages-suggest-storage.c023'),
|
|
39
|
+
k026: m('skill-home.space-pages-suggest-storage.c024'),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
10
42
|
export const FAMILY = 'suggest_storage';
|
|
11
43
|
export const PAGE_META = {
|
|
12
44
|
domain: 'space',
|
|
@@ -45,114 +77,97 @@ function attr(s) {
|
|
|
45
77
|
return escapeHtml(s).replace(/"/g, '"');
|
|
46
78
|
}
|
|
47
79
|
function hero(total, mode) {
|
|
48
|
-
const
|
|
80
|
+
const L = pageText();
|
|
81
|
+
const modeName = mode === 'batch' ? m('skill-home.space-pages-suggest-storage.c025') : m('skill-home.space-pages-suggest-storage.c026');
|
|
49
82
|
// 标题已在模板 h1(收纳建议),此处只放计数与模式徽章,不重复族名。
|
|
50
|
-
return '<div class="hero" data-need="异常:数据解析失败/数据校验失败">'
|
|
51
|
-
+ '<div class="eyebrow"><span class="chip" data-need="总量">共' + total + '件</span>'
|
|
52
|
-
+ '<span class="chip" data-need="当前mode">' + modeName + '</span></div>'
|
|
53
|
-
+ '<p class="lead">按分类常用位置给出安放推荐,采纳后走移物品流程</p></div>';
|
|
83
|
+
return '<div class="hero" data-need="异常:数据解析失败/数据校验失败">' + '<div class="eyebrow">' + '<span class="chip" data-need="总量">' + L.k001(String(total)) + '</span>' + '<span class="chip" data-need="当前mode">' + modeName + '</span>' + '</div>' + '<p class="lead">' + L.k002 + '</p>' + '</div>';
|
|
54
84
|
}
|
|
55
85
|
// 备选区标题保层级(父级是卡 h2,故标题用 h3,不跳级):模板只定义了 `.rec .alt h4`,缺 h3 那条,
|
|
56
86
|
// 默认字号会大过卡片标题;此处按同款补一条规则(字号/字重/间距对齐 h4),不改模板(#817 复评 seq 32)。
|
|
57
87
|
const ALT_CSS = '<style>.rec .alt h3{font-size:12px;font-weight:700;color:#86868b;margin-bottom:8px}</style>';
|
|
58
88
|
/** 理由行走「标签+值」行(与同卡「当前」行同款):理由由取数层按分类聚类算出,多张卡会算出同一句,
|
|
59
89
|
* 值位行不进机审重复句门;页上也不再自引用本卡物品名(#817 seq 32 的 ⑤:卡标题已写物品名)。 */
|
|
90
|
+
/** 原位置行:当前位置为空时整行不出(链内条件分支抽成局部变量,见迁移手册 §4.7)。 */
|
|
91
|
+
function origLine(cur) {
|
|
92
|
+
if (cur === '')
|
|
93
|
+
return '';
|
|
94
|
+
return m('skill-home.space-pages-suggest-storage.c027', { p0: String(cur) });
|
|
95
|
+
}
|
|
60
96
|
function whyRow(reason) {
|
|
61
|
-
|
|
97
|
+
const L = pageText();
|
|
98
|
+
return '<table class="meta2">' + '<tr>' + '<th>' + L.k003 + '</th>' + '<td>' + escapeHtml(reason) + '</td>' + '</tr>' + '</table>';
|
|
62
99
|
}
|
|
63
100
|
function recSection(r) {
|
|
101
|
+
const L = pageText();
|
|
64
102
|
const it = r.item;
|
|
65
103
|
// 首行只放分类(短行不进重复句);当前位置只在推荐卡下以单行呈现(逐件唯一)。
|
|
66
104
|
const head = '<h2>' + escapeHtml(it.name)
|
|
67
105
|
+ ' <span class="hint">' + escapeHtml(it.category) + '</span></h2>';
|
|
68
106
|
const curLine = r.recommend !== null && it.current !== ''
|
|
69
|
-
? '<table class="meta2"
|
|
107
|
+
? '<table class="meta2">' + '<tr>' + '<th>' + L.k004 + '</th>' + '<td>' + escapeHtml(it.current) + '</td>' + '</tr>' + '</table>' : '';
|
|
70
108
|
let main = '';
|
|
71
109
|
if (r.recommend !== null) {
|
|
72
110
|
const rc = r.recommend;
|
|
73
|
-
const adoptPrompt = '
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
+ '<button class="btn ghost" data-copy="' + attr(changePrompt)
|
|
88
|
-
+ '" data-need="换一个建议">换建议</button></div></div>';
|
|
111
|
+
const adoptPrompt = m('skill-home.space-pages-suggest-storage.c028', {
|
|
112
|
+
p0: String(it.name),
|
|
113
|
+
p1: String(it.id),
|
|
114
|
+
p2: String(rc.location),
|
|
115
|
+
p3: String(origLine(it.current)),
|
|
116
|
+
});
|
|
117
|
+
const fixedPrompt = m('skill-home.space-pages-suggest-storage.c029', {
|
|
118
|
+
p0: String(it.name),
|
|
119
|
+
p1: String(it.id),
|
|
120
|
+
p2: String(rc.location),
|
|
121
|
+
});
|
|
122
|
+
const changePrompt = m('skill-home.space-pages-suggest-storage.c030', { p0: String(it.name), p1: String(it.id) });
|
|
123
|
+
const fixedBtn = it.fixed === '' ? '<button class="btn ghost" data-copy="' + attr(fixedPrompt) + '" data-need="设为固定位">' + L.k005 + '</button>' : '';
|
|
124
|
+
main = '<div class="main">' + '<span class="tag">' + L.k006 + '</span>' + '<div class="loc">' + escapeHtml(rc.location) + '</div>' + whyRow(rc.reason) + '<div class="acts">' + '<button class="btn" data-copy="' + attr(adoptPrompt) + '" data-need="采纳(去移物品)">' + L.k007 + '</button>' + fixedBtn + '<button class="btn ghost" data-copy="' + attr(changePrompt) + '" data-need="换一个建议">' + L.k008 + '</button>' + '</div>' + '</div>';
|
|
89
125
|
}
|
|
90
126
|
else if (r.keep !== null) {
|
|
91
127
|
const kp = r.keep;
|
|
92
|
-
const fixedBtn = it.fixed === '' ? '<button class="btn ghost" data-copy="'
|
|
93
|
-
+
|
|
94
|
-
|
|
95
|
-
+ '" data-need="设为固定位">设固定位</button>' : '';
|
|
96
|
-
main = '<div class="main keep"><span class="tag">保持现状</span>'
|
|
97
|
-
+ '<div class="loc">' + escapeHtml(kp.location) + '</div>'
|
|
98
|
-
+ whyRow(kp.reason)
|
|
99
|
-
+ '<div class="acts">' + fixedBtn + '</div></div>';
|
|
128
|
+
const fixedBtn = it.fixed === '' ? '<button class="btn ghost" data-copy="' + attr(L.k012 + it.name
|
|
129
|
+
+ L.k011 + it.id + L.k010 + kp.location + L.k009) + '" data-need="设为固定位">' + L.k013 + '</button>' : '';
|
|
130
|
+
main = '<div class="main keep">' + '<span class="tag">' + L.k014 + '</span>' + '<div class="loc">' + escapeHtml(kp.location) + '</div>' + whyRow(kp.reason) + '<div class="acts">' + fixedBtn + '</div>' + '</div>';
|
|
100
131
|
}
|
|
101
132
|
else {
|
|
102
|
-
main = '<div class="main none" data-need="无依据态"
|
|
103
|
-
+ '<div class="loc" style="font-size:15px;color:#6e6e73">该物品还没有位置记录</div>'
|
|
104
|
-
+ '<div class="why">先录位置,或用空间视图看全屋布局后手动移入</div></div>';
|
|
133
|
+
main = '<div class="main none" data-need="无依据态">' + '<span class="tag">' + L.k015 + '</span>' + '<div class="loc" style="font-size:15px;color:#6e6e73">' + L.k016 + '</div>' + '<div class="why">' + L.k017 + '</div>' + '</div>';
|
|
105
134
|
}
|
|
106
135
|
const alt = r.alternates.length === 0
|
|
107
|
-
? '<div class="altrow" data-need="备选空态:暂无其他备选"
|
|
136
|
+
? '<div class="altrow" data-need="备选空态:暂无其他备选">' + L.k018 + '</div>'
|
|
108
137
|
// 每行自带地点(与其理由同一行):理由可能两条一模一样,带上地点后每行自解释,页上也不出现两行逐字相同的文字。
|
|
109
138
|
: '<table class="alt">' + r.alternates.map((a) => '<tr><td>'
|
|
110
|
-
+ escapeHtml(a.location +
|
|
111
|
-
return '<section class="card" data-block="fields" data-need="推荐列表(推荐位置/理由/备选位置)">'
|
|
112
|
-
+ head + curLine + '<div class="rec">' + main
|
|
113
|
-
+ '<div class="alt"><h3>备选位置</h3>' + alt + '</div></div></section>';
|
|
139
|
+
+ escapeHtml(a.location + L.k019 + a.reason) + '</td></tr>').join('') + '</table>';
|
|
140
|
+
return '<section class="card" data-block="fields" data-need="推荐列表(推荐位置/理由/备选位置)">' + head + curLine + '<div class="rec">' + main + '<div class="alt">' + '<h3>' + L.k020 + '</h3>' + alt + '</div>' + '</div>' + '</section>';
|
|
114
141
|
}
|
|
115
142
|
function actionsBar(env, batch, ctx) {
|
|
143
|
+
const L = pageText();
|
|
116
144
|
// 「复制建议」是场景 prompt 按钮,原样保留;复制数据/复制日志走共用件(envelope 投影,三格式恒开)。
|
|
117
145
|
const dataJson = attr(JSON.stringify(env.data ?? {}));
|
|
118
|
-
const batchPrompt = '
|
|
119
|
-
const batchBtn = batch ? '' : '<button class="btn" data-copy="' + attr(batchPrompt)
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
+
|
|
123
|
-
|
|
124
|
-
+ 'onclick="copyText(this.getAttribute("data-t"),"建议已复制")">复制建议</button>'
|
|
125
|
-
+ '<span data-need="复制数据" hidden></span><span data-need="复制日志" hidden></span>'
|
|
126
|
-
+ homeCopyArea({
|
|
127
|
-
data: { envelope: env },
|
|
128
|
-
log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
|
|
129
|
-
})
|
|
130
|
-
+ '</div>';
|
|
146
|
+
const batchPrompt = m('skill-home.space-pages-suggest-storage.c031');
|
|
147
|
+
const batchBtn = batch ? '' : '<button class="btn" data-copy="' + attr(batchPrompt) + '" data-need="找没固定位的常用件" data-block="operations">' + L.k021 + '</button>';
|
|
148
|
+
return '<div class="actions" data-block="operations" data-need="批量标记">' + batchBtn + '<button class="btn ghost" data-t="' + dataJson + '" data-need="复制收纳建议" onclick="' + L.k022 + '">' + L.k023 + '</button>' + '<span data-need="复制数据" hidden>' + '</span>' + '<span data-need="复制日志" hidden>' + '</span>' + homeCopyArea({
|
|
149
|
+
data: { envelope: env },
|
|
150
|
+
log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
|
|
151
|
+
}) + '</div>';
|
|
131
152
|
}
|
|
132
153
|
function genericList(names) {
|
|
154
|
+
const L = pageText();
|
|
133
155
|
// storage 预设运行时走位置总览(#801 偏离:同页族不同数据):扁平列表如实呈现,不冒充推荐;推荐三操作无载体,块位以隐藏载体保留。
|
|
134
156
|
const cards = names.map((n) => '<div class="altrow">' + escapeHtml(n) + '</div>').join('');
|
|
135
|
-
return '<section class="card" data-block="fields">'
|
|
136
|
-
+ '<h2>位置总览</h2><div class="alt">' + cards + '</div></section>'
|
|
137
|
-
+ '<div hidden><span data-need="采纳(去移物品)"></span>'
|
|
138
|
-
+ '<span data-need="设为固定位"></span><span data-need="换一个建议"></span></div>';
|
|
157
|
+
return '<section class="card" data-block="fields">' + '<h2>' + L.k024 + '</h2>' + '<div class="alt">' + cards + '</div>' + '</section>' + '<div hidden>' + '<span data-need="采纳(去移物品)">' + '</span>' + '<span data-need="设为固定位">' + '</span>' + '<span data-need="换一个建议">' + '</span>' + '</div>';
|
|
139
158
|
}
|
|
140
159
|
// 装配入口:真 envelope(真命令链产出)+本族模板 → 同形整页。
|
|
141
160
|
// fail-closed:模板缺失/标记异常(fillTemplate 内抛)不返空页。
|
|
142
161
|
// 复制区走共用件(卡路里同款三格式+六段日志);`ctx.command` 由交付链供给(含 params),直调缺省按本族主 key。
|
|
143
162
|
export function renderFamilyPage(env, ctx) {
|
|
163
|
+
const L = pageText();
|
|
144
164
|
const template = readFileSync(new URL('../../../templates/space/suggest_storage.html', import.meta.url), 'utf8');
|
|
145
165
|
const data = (env.data ?? {});
|
|
146
166
|
const items = Array.isArray(data.items) ? data.items : [];
|
|
147
167
|
const recs = items.filter((r) => r.kind === 'recommendation');
|
|
148
168
|
const batch = recs.length > 0 && recs[0].mode === 'batch';
|
|
149
169
|
// 空态索引(各空态真 render 由测试空库/分类断言覆盖,此处置位标记)。
|
|
150
|
-
const emptyIndex = '<div hidden data-block="empty">'
|
|
151
|
-
+ '<span data-need="空态:都有固定位了/没有可建议的物品"></span>'
|
|
152
|
-
+ '<span data-need="无依据态:暂无依据"></span>'
|
|
153
|
-
+ '<span data-need="备选空态:暂无其他备选"></span>'
|
|
154
|
-
+ '<span data-need="推荐列表(推荐位置/理由/备选位置)"></span>'
|
|
155
|
-
+ '<span data-need="无依据态"></span></div>';
|
|
170
|
+
const emptyIndex = '<div hidden data-block="empty">' + '<span data-need="空态:都有固定位了/没有可建议的物品">' + '</span>' + '<span data-need="无依据态:暂无依据">' + '</span>' + '<span data-need="备选空态:暂无其他备选">' + '</span>' + '<span data-need="推荐列表(推荐位置/理由/备选位置)">' + '</span>' + '<span data-need="无依据态">' + '</span>' + '</div>';
|
|
156
171
|
let body = '';
|
|
157
172
|
if (recs.length > 0) {
|
|
158
173
|
body = recs.map(recSection).join('');
|
|
@@ -168,8 +183,7 @@ export function renderFamilyPage(env, ctx) {
|
|
|
168
183
|
}));
|
|
169
184
|
}
|
|
170
185
|
else {
|
|
171
|
-
body = '<div class="empty" data-block="fields" data-need="空态:都有固定位了/没有可建议的物品">'
|
|
172
|
-
+ '<h2>没有可建议的物品</h2>先录物品,或指定物品名称再来。</div>';
|
|
186
|
+
body = '<div class="empty" data-block="fields" data-need="空态:都有固定位了/没有可建议的物品">' + '<h2>' + L.k025 + '</h2>' + L.k026 + '</div>';
|
|
173
187
|
}
|
|
174
188
|
const content = hero(recs.length, batch ? 'batch' : 'single')
|
|
175
189
|
+ '<div data-block="empty" hidden></div><div data-block="status" hidden></div>' + emptyIndex
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest_storage.js","sourceRoot":"","sources":["../../../src/space/pages/suggest_storage.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,2DAA2D;AAC3D,6DAA6D;AAC7D,mEAAmE;AACnE,0DAA0D;AAC1D,0CAA0C;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"suggest_storage.js","sourceRoot":"","sources":["../../../src/space/pages/suggest_storage.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,2DAA2D;AAC3D,6DAA6D;AAC7D,mEAAmE;AACnE,0DAA0D;AAC1D,0CAA0C;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1G,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE3C,mCAAmC;AACnC,SAAS,QAAQ;IACf,OAAO;QACL,IAAI,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,CAAC,6CAA6C,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;QAC1F,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,GAAG;QACT,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,GAAG;QACT,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;QACtD,IAAI,EAAE,CAAC,CAAC,6CAA6C,CAAC;KACvD,CAAC;AACJ,CAAC;AAGD,MAAM,CAAC,MAAM,MAAM,GAAG,iBAA0B,CAAC;AAEjD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,MAAM;IACd,GAAG,EAAE,qBAAqB;IAC1B,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,EAAC,MAAM,EAAC,SAAS,EAA4B;IACrD,IAAI,EAAE,CAAC,EAAC,KAAK,EAAC,qBAAqB,EAAC,QAAQ,EAAC,EAAC,MAAM,EAAC,SAAS,EAAC,EAAC,CAAkF;CAC1I,CAAC;AAEX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE;QACP,oBAAoB;QACpB,WAAW;QACX,aAAa;QACb,kBAAkB;KACnB;IACD,QAAQ,EAAE;QACR,oBAAoB;QACpB,MAAM;QACN,IAAI;QACJ,QAAQ;QACR,MAAM;KACP;IACD,YAAY,EAAE;QACZ,UAAU;QACV,OAAO;QACP,OAAO;QACP,WAAW;QACX,QAAQ;QACR,MAAM;QACN,MAAM;KACP;IACD,QAAQ,EAAE,EAAE;CAMb,CAAC;AASF,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,IAAI,CAAC,KAAa,EAAE,IAAY;IACvC,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC;IACxI,qCAAqC;IACrC,OAAO,iDAAiD,GAAG,uBAAuB,GAAG,oCAAoC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,GAAG,wCAAwC,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAC;AAC/R,CAAC;AAED,+DAA+D;AAC/D,8DAA8D;AAC9D,MAAM,OAAO,GAAG,6FAA6F,CAAC;AAE9G;2DAC2D;AAC3D,iDAAiD;AACjD,SAAS,QAAQ,CAAC,GAAW;IAC3B,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAC1B,OAAO,CAAC,CAAC,6CAA6C,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,MAAM,CAAC,MAAc;IAC5B,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACrB,OAAO,uBAAuB,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AACrI,CAAC;AAED,SAAS,UAAU,CAAC,CAAiB;IACnC,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACrB,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;IAClB,yCAAyC;IACzC,MAAM,IAAI,GAAG,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC;UACrC,sBAAsB,GAAG,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC;IACtE,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,KAAK,IAAI,IAAI,EAAE,CAAC,OAAO,KAAK,EAAE;QACvD,CAAC,CAAC,uBAAuB,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACzI,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC;QACvB,MAAM,WAAW,GAAG,CAAC,CAAC,6CAA6C,EAAE;YACnE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;YACnB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;YACvB,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;SACjC,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,CAAC,CAAC,6CAA6C,EAAE;YACnE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;YACnB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;SACxB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,CAAC,CAAC,6CAA6C,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAClH,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,uCAAuC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,sBAAsB,GAAG,CAAC,CAAC,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACpJ,IAAI,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,CAAC,CAAC,IAAI,GAAG,SAAS,GAAG,mBAAmB,GAAG,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,oBAAoB,GAAG,iCAAiC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,yBAAyB,GAAG,CAAC,CAAC,IAAI,GAAG,WAAW,GAAG,QAAQ,GAAG,uCAAuC,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,sBAAsB,GAAG,CAAC,CAAC,IAAI,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3a,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;QAClB,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,uCAAuC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI;cAC5F,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,sBAAsB,GAAG,CAAC,CAAC,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3G,IAAI,GAAG,yBAAyB,GAAG,oBAAoB,GAAG,CAAC,CAAC,IAAI,GAAG,SAAS,GAAG,mBAAmB,GAAG,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,oBAAoB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACtN,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,0CAA0C,GAAG,oBAAoB,GAAG,CAAC,CAAC,IAAI,GAAG,SAAS,GAAG,wDAAwD,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ,GAAG,mBAAmB,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACpO,CAAC;IACD,MAAM,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QACnC,CAAC,CAAC,8CAA8C,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ;QACpE,yDAAyD;QACzD,CAAC,CAAC,qBAAqB,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU;cACxD,UAAU,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC;IACvF,OAAO,2EAA2E,GAAG,IAAI,GAAG,OAAO,GAAG,mBAAmB,GAAG,IAAI,GAAG,mBAAmB,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,GAAG,GAAG,GAAG,QAAQ,GAAG,QAAQ,GAAG,YAAY,CAAC;AAChO,CAAC;AAED,SAAS,UAAU,CAAC,GAAa,EAAE,KAAc,EAAE,GAA+D;IAChH,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACrB,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,CAAC,CAAC,6CAA6C,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,kDAAkD,GAAG,CAAC,CAAC,IAAI,GAAG,WAAW,CAAC;IAChK,OAAO,gEAAgE,GAAG,QAAQ,GAAG,oCAAoC,GAAG,QAAQ,GAAG,gCAAgC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,WAAW,GAAG,gCAAgC,GAAG,SAAS,GAAG,gCAAgC,GAAG,SAAS,GAAG,YAAY,CAAC;QACtT,IAAI,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE;QACvB,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,gBAAgB,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,IAAI,YAAY,EAAE,EAAE,CAAC,EAAE;KACvJ,CAAC,GAAG,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,WAAW,CAAC,KAAe;IAClC,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACrB,yEAAyE;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3F,OAAO,4CAA4C,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,GAAG,mBAAmB,GAAG,KAAK,GAAG,QAAQ,GAAG,YAAY,GAAG,cAAc,GAAG,6BAA6B,GAAG,SAAS,GAAG,0BAA0B,GAAG,SAAS,GAAG,0BAA0B,GAAG,SAAS,GAAG,QAAQ,CAAC;AACpS,CAAC;AAED,uCAAuC;AACvC,8CAA8C;AAC9C,sEAAsE;AACtE,MAAM,UAAU,gBAAgB,CAAC,GAAa,EAAE,GAA+D;IAC7G,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC,+CAA+C,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACjH,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAA0B,CAAC;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAA6C,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAqB,CAAC;IAClF,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;IAC1D,yCAAyC;IACzC,MAAM,UAAU,GAAG,iCAAiC,GAAG,uCAAuC,GAAG,SAAS,GAAG,8BAA8B,GAAG,SAAS,GAAG,gCAAgC,GAAG,SAAS,GAAG,uCAAuC,GAAG,SAAS,GAAG,yBAAyB,GAAG,SAAS,GAAG,QAAQ,CAAC;IAChT,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjC,MAAM,CAAC,GAAG,CAAyE,CAAC;YACpF,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,CAAC,CAAC,IAAI,CAAC;YAC9C,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,CAAC,MAAM,CAAC;YAClD,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,wEAAwE,GAAG,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,OAAO,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC;IAClI,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;UACzD,6EAA6E,GAAG,UAAU;UAC1F,OAAO,GAAG,IAAI,GAAG,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACjD,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expiring.d.ts","sourceRoot":"","sources":["../../../src/stats/pages/expiring.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"expiring.d.ts","sourceRoot":"","sources":["../../../src/stats/pages/expiring.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA8C/C,eAAO,MAAM,MAAM,EAAG,UAAmB,CAAC;AAE1C,eAAO,MAAM,SAAS;;;;;qBAKW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;mBACa,SAAS;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE;CACxI,CAAC;AAEX,eAAO,MAAM,eAAe,EA+BvB;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC,CAAC;AAoIF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAwCvH"}
|