skill-bill 0.2.0 → 0.2.1
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/SKILL.md +3 -2
- package/dist/.gen-inputs.json +21 -5
- package/dist/account/accounts.d.ts +98 -0
- package/dist/account/accounts.d.ts.map +1 -0
- package/dist/account/accounts.js +184 -0
- package/dist/account/accounts.js.map +1 -0
- package/dist/account/commands.d.ts +18 -0
- package/dist/account/commands.d.ts.map +1 -0
- package/dist/account/commands.js +21 -0
- package/dist/account/commands.js.map +1 -0
- package/dist/account/declaration.d.ts +9 -0
- package/dist/account/declaration.d.ts.map +1 -0
- package/dist/account/declaration.js +70 -0
- package/dist/account/declaration.js.map +1 -0
- package/dist/account/index.d.ts +15 -0
- package/dist/account/index.d.ts.map +1 -0
- package/dist/account/index.js +15 -0
- package/dist/account/index.js.map +1 -0
- package/dist/account/pageParts.d.ts +127 -0
- package/dist/account/pageParts.d.ts.map +1 -0
- package/dist/account/pageParts.js +222 -0
- package/dist/account/pageParts.js.map +1 -0
- package/dist/account/params.d.ts +52 -0
- package/dist/account/params.d.ts.map +1 -0
- package/dist/account/params.js +153 -0
- package/dist/account/params.js.map +1 -0
- package/dist/account/query.d.ts +11 -0
- package/dist/account/query.d.ts.map +1 -0
- package/dist/account/query.js +10 -0
- package/dist/account/query.js.map +1 -0
- package/dist/account/read.d.ts +8 -0
- package/dist/account/read.d.ts.map +1 -0
- package/dist/account/read.js +56 -0
- package/dist/account/read.js.map +1 -0
- package/dist/account/scene-add.d.ts +3 -0
- package/dist/account/scene-add.d.ts.map +1 -0
- package/dist/account/scene-add.js +54 -0
- package/dist/account/scene-add.js.map +1 -0
- package/dist/account/scene-transfer.d.ts +3 -0
- package/dist/account/scene-transfer.d.ts.map +1 -0
- package/dist/account/scene-transfer.js +73 -0
- package/dist/account/scene-transfer.js.map +1 -0
- package/dist/account/scene-update.d.ts +3 -0
- package/dist/account/scene-update.d.ts.map +1 -0
- package/dist/account/scene-update.js +56 -0
- package/dist/account/scene-update.js.map +1 -0
- package/dist/account/scene.d.ts +73 -0
- package/dist/account/scene.d.ts.map +1 -0
- package/dist/account/scene.js +34 -0
- package/dist/account/scene.js.map +1 -0
- package/dist/account/template-form.d.ts +52 -0
- package/dist/account/template-form.d.ts.map +1 -0
- package/dist/account/template-form.js +125 -0
- package/dist/account/template-form.js.map +1 -0
- package/dist/account/template-summary.d.ts +38 -0
- package/dist/account/template-summary.d.ts.map +1 -0
- package/dist/account/template-summary.js +179 -0
- package/dist/account/template-summary.js.map +1 -0
- package/dist/account/template-update.d.ts +35 -0
- package/dist/account/template-update.d.ts.map +1 -0
- package/dist/account/template-update.js +193 -0
- package/dist/account/template-update.js.map +1 -0
- package/dist/account/write.d.ts +14 -0
- package/dist/account/write.d.ts.map +1 -0
- package/dist/account/write.js +166 -0
- package/dist/account/write.js.map +1 -0
- package/dist/analysis/agg.d.ts +135 -0
- package/dist/analysis/agg.d.ts.map +1 -0
- package/dist/analysis/agg.js +196 -0
- package/dist/analysis/agg.js.map +1 -0
- package/dist/analysis/cards.d.ts +40 -0
- package/dist/analysis/cards.d.ts.map +1 -0
- package/dist/analysis/cards.js +97 -0
- package/dist/analysis/cards.js.map +1 -0
- package/dist/analysis/commands.d.ts +17 -0
- package/dist/analysis/commands.d.ts.map +1 -0
- package/dist/analysis/commands.js +28 -0
- package/dist/analysis/commands.js.map +1 -0
- package/dist/analysis/declaration.d.ts +9 -0
- package/dist/analysis/declaration.d.ts.map +1 -0
- package/dist/analysis/declaration.js +368 -0
- package/dist/analysis/declaration.js.map +1 -0
- package/dist/analysis/index.d.ts +14 -0
- package/dist/analysis/index.d.ts.map +1 -0
- package/dist/analysis/index.js +14 -0
- package/dist/analysis/index.js.map +1 -0
- package/dist/analysis/pageParts.d.ts +103 -0
- package/dist/analysis/pageParts.d.ts.map +1 -0
- package/dist/analysis/pageParts.js +158 -0
- package/dist/analysis/pageParts.js.map +1 -0
- package/dist/{policy/analysis.d.ts → analysis/params.d.ts} +1 -1
- package/dist/analysis/params.d.ts.map +1 -0
- package/dist/{policy/analysis.js → analysis/params.js} +10 -4
- package/dist/analysis/params.js.map +1 -0
- package/dist/analysis/read.d.ts +26 -0
- package/dist/analysis/read.d.ts.map +1 -0
- package/dist/analysis/read.js +84 -0
- package/dist/analysis/read.js.map +1 -0
- package/dist/analysis/scene-account.d.ts +3 -0
- package/dist/analysis/scene-account.d.ts.map +1 -0
- package/dist/analysis/scene-account.js +88 -0
- package/dist/analysis/scene-account.js.map +1 -0
- package/dist/analysis/scene-activity.d.ts +3 -0
- package/dist/analysis/scene-activity.d.ts.map +1 -0
- package/dist/analysis/scene-activity.js +108 -0
- package/dist/analysis/scene-activity.js.map +1 -0
- package/dist/analysis/scene-anomaly.d.ts +3 -0
- package/dist/analysis/scene-anomaly.d.ts.map +1 -0
- package/dist/analysis/scene-anomaly.js +173 -0
- package/dist/analysis/scene-anomaly.js.map +1 -0
- package/dist/analysis/scene-cat-compare.d.ts +3 -0
- package/dist/analysis/scene-cat-compare.d.ts.map +1 -0
- package/dist/analysis/scene-cat-compare.js +128 -0
- package/dist/analysis/scene-cat-compare.js.map +1 -0
- package/dist/analysis/scene-cat-trend.d.ts +3 -0
- package/dist/analysis/scene-cat-trend.d.ts.map +1 -0
- package/dist/analysis/scene-cat-trend.js +121 -0
- package/dist/analysis/scene-cat-trend.js.map +1 -0
- package/dist/analysis/scene-category.d.ts +3 -0
- package/dist/analysis/scene-category.d.ts.map +1 -0
- package/dist/analysis/scene-category.js +104 -0
- package/dist/analysis/scene-category.js.map +1 -0
- package/dist/analysis/scene-debt.d.ts +3 -0
- package/dist/analysis/scene-debt.d.ts.map +1 -0
- package/dist/analysis/scene-debt.js +111 -0
- package/dist/analysis/scene-debt.js.map +1 -0
- package/dist/analysis/scene-distribution.d.ts +3 -0
- package/dist/analysis/scene-distribution.d.ts.map +1 -0
- package/dist/analysis/scene-distribution.js +144 -0
- package/dist/analysis/scene-distribution.js.map +1 -0
- package/dist/analysis/scene-insight.d.ts +3 -0
- package/dist/analysis/scene-insight.d.ts.map +1 -0
- package/dist/analysis/scene-insight.js +151 -0
- package/dist/analysis/scene-insight.js.map +1 -0
- package/dist/analysis/scene-installment.d.ts +3 -0
- package/dist/analysis/scene-installment.d.ts.map +1 -0
- package/dist/analysis/scene-installment.js +168 -0
- package/dist/analysis/scene-installment.js.map +1 -0
- package/dist/analysis/scene-ledger.d.ts +3 -0
- package/dist/analysis/scene-ledger.d.ts.map +1 -0
- package/dist/analysis/scene-ledger.js +80 -0
- package/dist/analysis/scene-ledger.js.map +1 -0
- package/dist/analysis/scene-monthly.d.ts +3 -0
- package/dist/analysis/scene-monthly.d.ts.map +1 -0
- package/dist/analysis/scene-monthly.js +79 -0
- package/dist/analysis/scene-monthly.js.map +1 -0
- package/dist/analysis/scene-overview.d.ts +3 -0
- package/dist/analysis/scene-overview.d.ts.map +1 -0
- package/dist/analysis/scene-overview.js +82 -0
- package/dist/analysis/scene-overview.js.map +1 -0
- package/dist/analysis/scene-period-compare.d.ts +3 -0
- package/dist/analysis/scene-period-compare.d.ts.map +1 -0
- package/dist/analysis/scene-period-compare.js +127 -0
- package/dist/analysis/scene-period-compare.js.map +1 -0
- package/dist/analysis/scene-range-compare.d.ts +3 -0
- package/dist/analysis/scene-range-compare.d.ts.map +1 -0
- package/dist/analysis/scene-range-compare.js +144 -0
- package/dist/analysis/scene-range-compare.js.map +1 -0
- package/dist/analysis/scene-refund.d.ts +3 -0
- package/dist/analysis/scene-refund.d.ts.map +1 -0
- package/dist/analysis/scene-refund.js +78 -0
- package/dist/analysis/scene-refund.js.map +1 -0
- package/dist/analysis/scene-reimburse.d.ts +3 -0
- package/dist/analysis/scene-reimburse.d.ts.map +1 -0
- package/dist/analysis/scene-reimburse.js +88 -0
- package/dist/analysis/scene-reimburse.js.map +1 -0
- package/dist/analysis/scene-stats.d.ts +3 -0
- package/dist/analysis/scene-stats.d.ts.map +1 -0
- package/dist/analysis/scene-stats.js +80 -0
- package/dist/analysis/scene-stats.js.map +1 -0
- package/dist/analysis/scene-structure.d.ts +3 -0
- package/dist/analysis/scene-structure.d.ts.map +1 -0
- package/dist/analysis/scene-structure.js +93 -0
- package/dist/analysis/scene-structure.js.map +1 -0
- package/dist/analysis/scene-top-freq.d.ts +3 -0
- package/dist/analysis/scene-top-freq.d.ts.map +1 -0
- package/dist/analysis/scene-top-freq.js +91 -0
- package/dist/analysis/scene-top-freq.js.map +1 -0
- package/dist/analysis/scene-top.d.ts +3 -0
- package/dist/analysis/scene-top.d.ts.map +1 -0
- package/dist/analysis/scene-top.js +69 -0
- package/dist/analysis/scene-top.js.map +1 -0
- package/dist/analysis/scene-trend.d.ts +3 -0
- package/dist/analysis/scene-trend.d.ts.map +1 -0
- package/dist/analysis/scene-trend.js +131 -0
- package/dist/analysis/scene-trend.js.map +1 -0
- package/dist/analysis/scene-week.d.ts +3 -0
- package/dist/analysis/scene-week.d.ts.map +1 -0
- package/dist/analysis/scene-week.js +128 -0
- package/dist/analysis/scene-week.js.map +1 -0
- package/dist/analysis/scene-yearly.d.ts +3 -0
- package/dist/analysis/scene-yearly.d.ts.map +1 -0
- package/dist/analysis/scene-yearly.js +103 -0
- package/dist/analysis/scene-yearly.js.map +1 -0
- package/dist/analysis/scene-yoy.d.ts +3 -0
- package/dist/analysis/scene-yoy.d.ts.map +1 -0
- package/dist/analysis/scene-yoy.js +95 -0
- package/dist/analysis/scene-yoy.js.map +1 -0
- package/dist/analysis/scene.d.ts +240 -0
- package/dist/analysis/scene.d.ts.map +1 -0
- package/dist/analysis/scene.js +47 -0
- package/dist/analysis/scene.js.map +1 -0
- package/dist/analysis/template-bars.d.ts +3 -0
- package/dist/analysis/template-bars.d.ts.map +1 -0
- package/dist/analysis/template-bars.js +64 -0
- package/dist/analysis/template-bars.js.map +1 -0
- package/dist/analysis/template-charts.d.ts +3 -0
- package/dist/analysis/template-charts.d.ts.map +1 -0
- package/dist/analysis/template-charts.js +55 -0
- package/dist/analysis/template-charts.js.map +1 -0
- package/dist/analysis/template-compare.d.ts +3 -0
- package/dist/analysis/template-compare.d.ts.map +1 -0
- package/dist/analysis/template-compare.js +54 -0
- package/dist/analysis/template-compare.js.map +1 -0
- package/dist/analysis/template-insight.d.ts +3 -0
- package/dist/analysis/template-insight.d.ts.map +1 -0
- package/dist/analysis/template-insight.js +56 -0
- package/dist/analysis/template-insight.js.map +1 -0
- package/dist/analysis/template-tables.d.ts +3 -0
- package/dist/analysis/template-tables.d.ts.map +1 -0
- package/dist/analysis/template-tables.js +49 -0
- package/dist/analysis/template-tables.js.map +1 -0
- package/dist/analysis/views.d.ts +35 -0
- package/dist/analysis/views.d.ts.map +1 -0
- package/dist/{render → analysis}/views.js +2 -40
- package/dist/analysis/views.js.map +1 -0
- package/dist/cli/cmd_read.js +54 -302
- package/dist/cli/cmd_read.js.map +1 -1
- package/dist/cli/config.d.ts +16 -0
- package/dist/cli/config.d.ts.map +1 -0
- package/dist/cli/config.js +81 -0
- package/dist/cli/config.js.map +1 -0
- package/dist/cli/health.d.ts +7 -0
- package/dist/cli/health.d.ts.map +1 -0
- package/dist/cli/health.js +32 -0
- package/dist/cli/health.js.map +1 -0
- package/dist/cli/registry.d.ts +1 -1
- package/dist/cli/registry.d.ts.map +1 -1
- package/dist/cli/registry.js +9 -1
- package/dist/cli/registry.js.map +1 -1
- package/dist/config.d.ts +41 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +64 -0
- package/dist/config.js.map +1 -0
- package/dist/fetch/db.d.ts +6 -1
- package/dist/fetch/db.d.ts.map +1 -1
- package/dist/fetch/db.js +8 -3
- package/dist/fetch/db.js.map +1 -1
- package/dist/fetch/index.d.ts +1 -1
- package/dist/fetch/index.d.ts.map +1 -1
- package/dist/fetch/index.js +1 -1
- package/dist/fetch/index.js.map +1 -1
- package/dist/fetch/paths.d.ts +16 -4
- package/dist/fetch/paths.d.ts.map +1 -1
- package/dist/fetch/paths.js +54 -24
- package/dist/fetch/paths.js.map +1 -1
- package/dist/goal/commands.d.ts +18 -0
- package/dist/goal/commands.d.ts.map +1 -0
- package/dist/goal/commands.js +21 -0
- package/dist/goal/commands.js.map +1 -0
- package/dist/goal/declaration.d.ts +9 -0
- package/dist/goal/declaration.d.ts.map +1 -0
- package/dist/goal/declaration.js +71 -0
- package/dist/goal/declaration.js.map +1 -0
- package/dist/goal/goalData.d.ts +126 -0
- package/dist/goal/goalData.d.ts.map +1 -0
- package/dist/goal/goalData.js +228 -0
- package/dist/goal/goalData.js.map +1 -0
- package/dist/goal/index.d.ts +19 -0
- package/dist/goal/index.d.ts.map +1 -0
- package/dist/goal/index.js +19 -0
- package/dist/goal/index.js.map +1 -0
- package/dist/goal/pageParts.d.ts +140 -0
- package/dist/goal/pageParts.d.ts.map +1 -0
- package/dist/goal/pageParts.js +233 -0
- package/dist/goal/pageParts.js.map +1 -0
- package/dist/goal/params.d.ts +63 -0
- package/dist/goal/params.d.ts.map +1 -0
- package/dist/goal/params.js +164 -0
- package/dist/goal/params.js.map +1 -0
- package/dist/goal/query.d.ts +12 -0
- package/dist/goal/query.d.ts.map +1 -0
- package/dist/goal/query.js +10 -0
- package/dist/goal/query.js.map +1 -0
- package/dist/goal/read.d.ts +5 -0
- package/dist/goal/read.d.ts.map +1 -0
- package/dist/goal/read.js +79 -0
- package/dist/goal/read.js.map +1 -0
- package/dist/goal/scene-budget.d.ts +3 -0
- package/dist/goal/scene-budget.d.ts.map +1 -0
- package/dist/goal/scene-budget.js +125 -0
- package/dist/goal/scene-budget.js.map +1 -0
- package/dist/goal/scene-saving.d.ts +3 -0
- package/dist/goal/scene-saving.d.ts.map +1 -0
- package/dist/goal/scene-saving.js +116 -0
- package/dist/goal/scene-saving.js.map +1 -0
- package/dist/goal/scene-set-budget.d.ts +3 -0
- package/dist/goal/scene-set-budget.d.ts.map +1 -0
- package/dist/goal/scene-set-budget.js +94 -0
- package/dist/goal/scene-set-budget.js.map +1 -0
- package/dist/goal/scene-set-saving.d.ts +3 -0
- package/dist/goal/scene-set-saving.d.ts.map +1 -0
- package/dist/goal/scene-set-saving.js +66 -0
- package/dist/goal/scene-set-saving.js.map +1 -0
- package/dist/goal/scene.d.ts +142 -0
- package/dist/goal/scene.d.ts.map +1 -0
- package/dist/goal/scene.js +51 -0
- package/dist/goal/scene.js.map +1 -0
- package/dist/goal/template-form.d.ts +32 -0
- package/dist/goal/template-form.d.ts.map +1 -0
- package/dist/goal/template-form.js +124 -0
- package/dist/goal/template-form.js.map +1 -0
- package/dist/goal/template-progress.d.ts +47 -0
- package/dist/goal/template-progress.d.ts.map +1 -0
- package/dist/goal/template-progress.js +79 -0
- package/dist/goal/template-progress.js.map +1 -0
- package/dist/goal/write.d.ts +6 -0
- package/dist/goal/write.d.ts.map +1 -0
- package/dist/goal/write.js +131 -0
- package/dist/goal/write.js.map +1 -0
- package/dist/health.d.ts +41 -0
- package/dist/health.d.ts.map +1 -0
- package/dist/health.js +456 -0
- package/dist/health.js.map +1 -0
- package/dist/help/declaration.d.ts +9 -0
- package/dist/help/declaration.d.ts.map +1 -0
- package/dist/help/declaration.js +28 -0
- package/dist/help/declaration.js.map +1 -0
- package/dist/{render → help}/helpFile.d.ts +5 -2
- package/dist/help/helpFile.d.ts.map +1 -0
- package/dist/{render → help}/helpFile.js +13 -4
- package/dist/help/helpFile.js.map +1 -0
- package/dist/help/helpPaths.d.ts +11 -0
- package/dist/help/helpPaths.d.ts.map +1 -0
- package/dist/help/helpPaths.js +36 -0
- package/dist/help/helpPaths.js.map +1 -0
- package/dist/help/index.d.ts +2 -1
- package/dist/help/index.d.ts.map +1 -1
- package/dist/help/index.js +2 -1
- package/dist/help/index.js.map +1 -1
- package/dist/help/items.d.ts +17 -0
- package/dist/help/items.d.ts.map +1 -0
- package/dist/help/items.js +5 -0
- package/dist/help/items.js.map +1 -0
- package/dist/help/lookup.d.ts +1 -1
- package/dist/help/lookup.d.ts.map +1 -1
- package/dist/help/lookup.js +2 -2
- package/dist/help/lookup.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/link/declaration.d.ts +9 -0
- package/dist/link/declaration.d.ts.map +1 -0
- package/dist/link/declaration.js +40 -0
- package/dist/link/declaration.js.map +1 -0
- package/dist/query/commands.d.ts +0 -2
- package/dist/query/commands.d.ts.map +1 -1
- package/dist/query/commands.js +0 -4
- package/dist/query/commands.js.map +1 -1
- package/dist/query/declaration.d.ts +9 -0
- package/dist/query/declaration.d.ts.map +1 -0
- package/dist/query/declaration.js +251 -0
- package/dist/query/declaration.js.map +1 -0
- package/dist/query/detail.d.ts +4 -2
- package/dist/query/detail.d.ts.map +1 -1
- package/dist/query/detail.js +60 -32
- package/dist/query/detail.js.map +1 -1
- package/dist/query/index.d.ts +8 -2
- package/dist/query/index.d.ts.map +1 -1
- package/dist/query/index.js.map +1 -1
- package/dist/query/items.d.ts +22 -0
- package/dist/query/items.d.ts.map +1 -0
- package/dist/query/items.js +7 -0
- package/dist/query/items.js.map +1 -0
- package/dist/query/list.d.ts +31 -9
- package/dist/query/list.d.ts.map +1 -1
- package/dist/query/list.js +192 -55
- package/dist/query/list.js.map +1 -1
- package/dist/query/pageParts.d.ts +6 -0
- package/dist/query/pageParts.d.ts.map +1 -0
- package/dist/query/pageParts.js +18 -0
- package/dist/query/pageParts.js.map +1 -0
- package/dist/query/read.d.ts +8 -12
- package/dist/query/read.d.ts.map +1 -1
- package/dist/query/read.js +86 -63
- package/dist/query/read.js.map +1 -1
- package/dist/render/envelope.d.ts.map +1 -1
- package/dist/render/envelope.js +3 -11
- package/dist/render/envelope.js.map +1 -1
- package/dist/render/html.d.ts +0 -1
- package/dist/render/html.d.ts.map +1 -1
- package/dist/render/html.js +1 -3
- package/dist/render/html.js.map +1 -1
- package/dist/render/index.d.ts +5 -6
- package/dist/render/index.d.ts.map +1 -1
- package/dist/render/index.js +8 -4
- package/dist/render/index.js.map +1 -1
- package/dist/setup/backups.d.ts +52 -0
- package/dist/setup/backups.d.ts.map +1 -0
- package/dist/setup/backups.js +172 -0
- package/dist/setup/backups.js.map +1 -0
- package/dist/setup/blocked.d.ts +12 -0
- package/dist/setup/blocked.d.ts.map +1 -0
- package/dist/setup/blocked.js +65 -0
- package/dist/setup/blocked.js.map +1 -0
- package/dist/setup/commands.d.ts +10 -0
- package/dist/setup/commands.d.ts.map +1 -0
- package/dist/setup/commands.js +12 -0
- package/dist/setup/commands.js.map +1 -0
- package/dist/setup/declaration.d.ts +9 -0
- package/dist/setup/declaration.d.ts.map +1 -0
- package/dist/setup/declaration.js +92 -0
- package/dist/setup/declaration.js.map +1 -0
- package/dist/setup/import.d.ts +8 -0
- package/dist/setup/import.d.ts.map +1 -0
- package/dist/setup/import.js +111 -0
- package/dist/setup/import.js.map +1 -0
- package/dist/setup/importer.d.ts +79 -0
- package/dist/setup/importer.d.ts.map +1 -0
- package/dist/setup/importer.js +231 -0
- package/dist/setup/importer.js.map +1 -0
- package/dist/setup/index.d.ts +8 -0
- package/dist/setup/index.d.ts.map +1 -0
- package/dist/setup/index.js +8 -0
- package/dist/setup/index.js.map +1 -0
- package/dist/setup/pageParts.d.ts +93 -0
- package/dist/setup/pageParts.d.ts.map +1 -0
- package/dist/setup/pageParts.js +197 -0
- package/dist/setup/pageParts.js.map +1 -0
- package/dist/setup/params.d.ts +43 -0
- package/dist/setup/params.d.ts.map +1 -0
- package/dist/setup/params.js +94 -0
- package/dist/setup/params.js.map +1 -0
- package/dist/setup/restore.d.ts +5 -0
- package/dist/setup/restore.d.ts.map +1 -0
- package/dist/setup/restore.js +129 -0
- package/dist/setup/restore.js.map +1 -0
- package/dist/setup/run.d.ts +5 -0
- package/dist/setup/run.d.ts.map +1 -0
- package/dist/setup/run.js +188 -0
- package/dist/setup/run.js.map +1 -0
- package/dist/setup/scene-backup-create.d.ts +3 -0
- package/dist/setup/scene-backup-create.d.ts.map +1 -0
- package/dist/setup/scene-backup-create.js +26 -0
- package/dist/setup/scene-backup-create.js.map +1 -0
- package/dist/setup/scene-backup-list.d.ts +3 -0
- package/dist/setup/scene-backup-list.d.ts.map +1 -0
- package/dist/setup/scene-backup-list.js +24 -0
- package/dist/setup/scene-backup-list.js.map +1 -0
- package/dist/setup/scene-import.d.ts +3 -0
- package/dist/setup/scene-import.d.ts.map +1 -0
- package/dist/setup/scene-import.js +36 -0
- package/dist/setup/scene-import.js.map +1 -0
- package/dist/setup/scene-init-status.d.ts +14 -0
- package/dist/setup/scene-init-status.d.ts.map +1 -0
- package/dist/setup/scene-init-status.js +16 -0
- package/dist/setup/scene-init-status.js.map +1 -0
- package/dist/setup/scene-init.d.ts +3 -0
- package/dist/setup/scene-init.d.ts.map +1 -0
- package/dist/setup/scene-init.js +25 -0
- package/dist/setup/scene-init.js.map +1 -0
- package/dist/setup/scene-restore.d.ts +3 -0
- package/dist/setup/scene-restore.d.ts.map +1 -0
- package/dist/setup/scene-restore.js +33 -0
- package/dist/setup/scene-restore.js.map +1 -0
- package/dist/setup/scene.d.ts +26 -0
- package/dist/setup/scene.d.ts.map +1 -0
- package/dist/setup/scene.js +42 -0
- package/dist/setup/scene.js.map +1 -0
- package/dist/setup/status.d.ts +47 -0
- package/dist/setup/status.d.ts.map +1 -0
- package/dist/setup/status.js +68 -0
- package/dist/setup/status.js.map +1 -0
- package/dist/setup/steps.d.ts +66 -0
- package/dist/setup/steps.d.ts.map +1 -0
- package/dist/setup/steps.js +123 -0
- package/dist/setup/steps.js.map +1 -0
- package/dist/setup/template-list.d.ts +29 -0
- package/dist/setup/template-list.d.ts.map +1 -0
- package/dist/setup/template-list.js +187 -0
- package/dist/setup/template-list.js.map +1 -0
- package/dist/setup/template-receipt.d.ts +18 -0
- package/dist/setup/template-receipt.d.ts.map +1 -0
- package/dist/setup/template-receipt.js +93 -0
- package/dist/setup/template-receipt.js.map +1 -0
- package/dist/setup/template-wizard.d.ts +64 -0
- package/dist/setup/template-wizard.d.ts.map +1 -0
- package/dist/setup/template-wizard.js +233 -0
- package/dist/setup/template-wizard.js.map +1 -0
- package/dist/{policy → shared}/category.d.ts +0 -11
- package/dist/shared/category.d.ts.map +1 -0
- package/dist/{policy → shared}/category.js +15 -60
- package/dist/shared/category.js.map +1 -0
- package/dist/shared/commandSpec.d.ts +13 -10
- package/dist/shared/commandSpec.d.ts.map +1 -1
- package/dist/shared/copyArea.d.ts +1 -1
- package/dist/shared/copyArea.d.ts.map +1 -1
- package/dist/shared/copyArea.js +6 -4
- package/dist/shared/copyArea.js.map +1 -1
- package/dist/shared/dateRange.d.ts +31 -0
- package/dist/shared/dateRange.d.ts.map +1 -0
- package/dist/shared/dateRange.js +121 -0
- package/dist/shared/dateRange.js.map +1 -0
- package/dist/shared/docPage.d.ts +5 -1
- package/dist/shared/docPage.d.ts.map +1 -1
- package/dist/shared/docPage.js +50 -41
- package/dist/shared/docPage.js.map +1 -1
- package/dist/shared/kpi.d.ts +21 -0
- package/dist/shared/kpi.d.ts.map +1 -0
- package/dist/shared/kpi.js +20 -0
- package/dist/shared/kpi.js.map +1 -0
- package/dist/shared/pageIdentity.d.ts +11 -2
- package/dist/shared/pageIdentity.d.ts.map +1 -1
- package/dist/shared/pageIdentity.js +14 -2
- package/dist/shared/pageIdentity.js.map +1 -1
- package/dist/shared/pageSections.d.ts +23 -0
- package/dist/shared/pageSections.d.ts.map +1 -0
- package/dist/shared/pageSections.js +52 -0
- package/dist/shared/pageSections.js.map +1 -0
- package/dist/shared/pageShell.d.ts +2 -2
- package/dist/shared/pageShell.d.ts.map +1 -1
- package/dist/shared/pageShell.js +5 -10
- package/dist/shared/pageShell.js.map +1 -1
- package/dist/shared/params.d.ts +11 -0
- package/dist/shared/params.d.ts.map +1 -0
- package/dist/shared/params.js +60 -0
- package/dist/shared/params.js.map +1 -0
- package/dist/shared/sourceLine.d.ts +19 -0
- package/dist/shared/sourceLine.d.ts.map +1 -0
- package/dist/shared/sourceLine.js +52 -0
- package/dist/shared/sourceLine.js.map +1 -0
- package/dist/shared/writeParts.d.ts +5 -3
- package/dist/shared/writeParts.d.ts.map +1 -1
- package/dist/shared/writeParts.js.map +1 -1
- package/dist/triggers/routeSpec.d.ts +109 -0
- package/dist/triggers/routeSpec.d.ts.map +1 -0
- package/dist/triggers/routeSpec.js +19 -0
- package/dist/triggers/routeSpec.js.map +1 -0
- package/dist/triggers/wake-assets.d.ts +4 -26
- package/dist/triggers/wake-assets.d.ts.map +1 -1
- package/dist/triggers/wake-assets.js +52 -936
- package/dist/triggers/wake-assets.js.map +1 -1
- package/dist/triggers/wakeTable.d.ts +18 -0
- package/dist/triggers/wakeTable.d.ts.map +1 -0
- package/dist/triggers/wakeTable.js +135 -0
- package/dist/triggers/wakeTable.js.map +1 -0
- package/dist/write/blockedFold.d.ts +10 -0
- package/dist/write/blockedFold.d.ts.map +1 -0
- package/dist/write/blockedFold.js +31 -0
- package/dist/write/blockedFold.js.map +1 -0
- package/dist/{shared → write}/blockedSlots.d.ts +1 -1
- package/dist/write/blockedSlots.d.ts.map +1 -0
- package/dist/{shared → write}/blockedSlots.js +10 -7
- package/dist/write/blockedSlots.js.map +1 -0
- package/dist/write/candidatePick.d.ts.map +1 -0
- package/dist/{shared → write}/candidatePick.js +4 -3
- package/dist/write/candidatePick.js.map +1 -0
- package/dist/{record → write}/collect.d.ts +6 -4
- package/dist/write/collect.d.ts.map +1 -0
- package/dist/write/collect.js.map +1 -0
- package/dist/{record → write}/collectBody.d.ts +3 -3
- package/dist/write/collectBody.d.ts.map +1 -0
- package/dist/{record → write}/collectBody.js +13 -13
- package/dist/write/collectBody.js.map +1 -0
- package/dist/{shared → write}/collectFrame.d.ts +3 -1
- package/dist/{shared → write}/collectFrame.d.ts.map +1 -1
- package/dist/write/collectFrame.js +36 -0
- package/dist/write/collectFrame.js.map +1 -0
- package/dist/{record → write}/commands.d.ts +0 -1
- package/dist/write/commands.d.ts.map +1 -0
- package/dist/{record → write}/commands.js +0 -2
- package/dist/write/commands.js.map +1 -0
- package/dist/write/declaration.d.ts +9 -0
- package/dist/write/declaration.d.ts.map +1 -0
- package/dist/write/declaration.js +239 -0
- package/dist/write/declaration.js.map +1 -0
- package/dist/write/diffTable.d.ts.map +1 -0
- package/dist/{shared → write}/diffTable.js +1 -1
- package/dist/write/diffTable.js.map +1 -0
- package/dist/write/duplicateNote.d.ts.map +1 -0
- package/dist/{shared → write}/duplicateNote.js +4 -4
- package/dist/write/duplicateNote.js.map +1 -0
- package/dist/write/emptyNote.d.ts.map +1 -0
- package/dist/{shared → write}/emptyNote.js +2 -2
- package/dist/write/emptyNote.js.map +1 -0
- package/dist/{shared → write}/errorReceipt.d.ts +1 -1
- package/dist/write/errorReceipt.d.ts.map +1 -0
- package/dist/{shared → write}/errorReceipt.js +2 -2
- package/dist/write/errorReceipt.js.map +1 -0
- package/dist/write/flowSteps.d.ts.map +1 -0
- package/dist/{shared → write}/flowSteps.js +1 -1
- package/dist/write/flowSteps.js.map +1 -0
- package/dist/{record → write}/index.d.ts +7 -3
- package/dist/write/index.d.ts.map +1 -0
- package/dist/{record → write}/index.js +1 -0
- package/dist/write/index.js.map +1 -0
- package/dist/write/installmentPreview.d.ts.map +1 -0
- package/dist/{shared → write}/installmentPreview.js +3 -3
- package/dist/write/installmentPreview.js.map +1 -0
- package/dist/write/outsideScan.d.ts.map +1 -0
- package/dist/{shared → write}/outsideScan.js +7 -7
- package/dist/write/outsideScan.js.map +1 -0
- package/dist/write/pageParts.d.ts +69 -0
- package/dist/write/pageParts.d.ts.map +1 -0
- package/dist/write/pageParts.js +80 -0
- package/dist/write/pageParts.js.map +1 -0
- package/dist/write/photoEscape.d.ts.map +1 -0
- package/dist/{shared → write}/photoEscape.js +16 -16
- package/dist/write/photoEscape.js.map +1 -0
- package/dist/write/prefillNote.d.ts.map +1 -0
- package/dist/{shared → write}/prefillNote.js +6 -5
- package/dist/write/prefillNote.js.map +1 -0
- package/dist/{record → write}/receipt.d.ts +5 -3
- package/dist/write/receipt.d.ts.map +1 -0
- package/dist/write/receipt.js.map +1 -0
- package/dist/write/receiptBody.d.ts +10 -0
- package/dist/write/receiptBody.d.ts.map +1 -0
- package/dist/{record → write}/receiptBody.js +24 -25
- package/dist/write/receiptBody.js.map +1 -0
- package/dist/write/receiptOut.d.ts +14 -0
- package/dist/write/receiptOut.d.ts.map +1 -0
- package/dist/write/receiptOut.js +13 -0
- package/dist/write/receiptOut.js.map +1 -0
- package/dist/{shared → write}/receiptParts.d.ts +1 -1
- package/dist/write/receiptParts.d.ts.map +1 -0
- package/dist/{shared → write}/receiptParts.js +3 -3
- package/dist/write/receiptParts.js.map +1 -0
- package/dist/{shared → write}/recentPicks.d.ts +14 -6
- package/dist/write/recentPicks.d.ts.map +1 -0
- package/dist/write/recentPicks.js +65 -0
- package/dist/write/recentPicks.js.map +1 -0
- package/dist/write/record.d.ts +13 -0
- package/dist/write/record.d.ts.map +1 -0
- package/dist/write/record.js +46 -0
- package/dist/write/record.js.map +1 -0
- package/dist/write/recordPicker.d.ts.map +1 -0
- package/dist/{shared → write}/recordPicker.js +3 -3
- package/dist/write/recordPicker.js.map +1 -0
- package/dist/write/rowEditorTable.d.ts.map +1 -0
- package/dist/{shared → write}/rowEditorTable.js +1 -1
- package/dist/write/rowEditorTable.js.map +1 -0
- package/dist/write/scene-batch.d.ts.map +1 -0
- package/dist/write/scene-batch.js +37 -0
- package/dist/write/scene-batch.js.map +1 -0
- package/dist/write/scene-borrow.d.ts.map +1 -0
- package/dist/write/scene-borrow.js +166 -0
- package/dist/write/scene-borrow.js.map +1 -0
- package/dist/write/scene-collect.d.ts.map +1 -0
- package/dist/write/scene-collect.js +155 -0
- package/dist/write/scene-collect.js.map +1 -0
- package/dist/write/scene-expense.d.ts.map +1 -0
- package/dist/write/scene-expense.js +50 -0
- package/dist/write/scene-expense.js.map +1 -0
- package/dist/write/scene-income.d.ts.map +1 -0
- package/dist/write/scene-income.js +51 -0
- package/dist/write/scene-income.js.map +1 -0
- package/dist/write/scene-installment.d.ts.map +1 -0
- package/dist/write/scene-installment.js +52 -0
- package/dist/write/scene-installment.js.map +1 -0
- package/dist/write/scene-lend.d.ts.map +1 -0
- package/dist/write/scene-lend.js +165 -0
- package/dist/write/scene-lend.js.map +1 -0
- package/dist/write/scene-photo.d.ts.map +1 -0
- package/dist/write/scene-photo.js +108 -0
- package/dist/write/scene-photo.js.map +1 -0
- package/dist/write/scene-plain.d.ts.map +1 -0
- package/dist/write/scene-plain.js +52 -0
- package/dist/write/scene-plain.js.map +1 -0
- package/dist/write/scene-refund.d.ts.map +1 -0
- package/dist/write/scene-refund.js +139 -0
- package/dist/write/scene-refund.js.map +1 -0
- package/dist/write/scene-reimburse-done.d.ts.map +1 -0
- package/dist/write/scene-reimburse-done.js +151 -0
- package/dist/write/scene-reimburse-done.js.map +1 -0
- package/dist/write/scene-reimburse.d.ts.map +1 -0
- package/dist/write/scene-reimburse.js +65 -0
- package/dist/write/scene-reimburse.js.map +1 -0
- package/dist/write/scene-repay.d.ts.map +1 -0
- package/dist/write/scene-repay.js +155 -0
- package/dist/write/scene-repay.js.map +1 -0
- package/dist/write/scene-restore.d.ts.map +1 -0
- package/dist/write/scene-restore.js +59 -0
- package/dist/write/scene-restore.js.map +1 -0
- package/dist/write/scene-undo.d.ts.map +1 -0
- package/dist/write/scene-undo.js +57 -0
- package/dist/write/scene-undo.js.map +1 -0
- package/dist/write/scene-update.d.ts.map +1 -0
- package/dist/write/scene-update.js +57 -0
- package/dist/write/scene-update.js.map +1 -0
- package/dist/{record → write}/scene.d.ts +16 -9
- package/dist/write/scene.d.ts.map +1 -0
- package/dist/{record → write}/scene.js +6 -1
- package/dist/write/scene.js.map +1 -0
- package/dist/write/slots.d.ts.map +1 -0
- package/dist/{record → write}/slots.js +9 -8
- package/dist/{record → write}/slots.js.map +1 -1
- package/dist/write/sourceNote.d.ts +5 -0
- package/dist/write/sourceNote.d.ts.map +1 -0
- package/dist/write/sourceNote.js +37 -0
- package/dist/write/sourceNote.js.map +1 -0
- package/dist/write/summaryRow.d.ts.map +1 -0
- package/dist/{shared → write}/summaryRow.js +11 -7
- package/dist/write/summaryRow.js.map +1 -0
- package/dist/write/template-batch.d.ts +37 -0
- package/dist/write/template-batch.d.ts.map +1 -0
- package/dist/write/template-batch.js +212 -0
- package/dist/write/template-batch.js.map +1 -0
- package/dist/write/template-expense.d.ts +90 -0
- package/dist/write/template-expense.d.ts.map +1 -0
- package/dist/write/template-expense.js +214 -0
- package/dist/write/template-expense.js.map +1 -0
- package/dist/write/template-flow.d.ts +130 -0
- package/dist/write/template-flow.d.ts.map +1 -0
- package/dist/write/template-flow.js +225 -0
- package/dist/write/template-flow.js.map +1 -0
- package/dist/write/template-installment.d.ts +69 -0
- package/dist/write/template-installment.d.ts.map +1 -0
- package/dist/write/template-installment.js +240 -0
- package/dist/write/template-installment.js.map +1 -0
- package/dist/write/template-update.d.ts +83 -0
- package/dist/write/template-update.d.ts.map +1 -0
- package/dist/write/template-update.js +263 -0
- package/dist/write/template-update.js.map +1 -0
- package/dist/{shared → write}/typeBadge.d.ts +9 -2
- package/dist/write/typeBadge.d.ts.map +1 -0
- package/dist/{shared → write}/typeBadge.js +16 -8
- package/dist/write/typeBadge.js.map +1 -0
- package/dist/{shared → write}/userWording.d.ts +2 -24
- package/dist/write/userWording.d.ts.map +1 -0
- package/dist/{shared → write}/userWording.js +12 -22
- package/dist/write/userWording.js.map +1 -0
- package/dist/write/write.d.ts.map +1 -0
- package/dist/{record → write}/write.js +7 -7
- package/dist/write/write.js.map +1 -0
- package/dist/{help → write}/writeWire.d.ts +1 -1
- package/dist/{help → write}/writeWire.d.ts.map +1 -1
- package/dist/{help → write}/writeWire.js +3 -3
- package/dist/write/writeWire.js.map +1 -0
- package/package.json +3 -3
- package/dist/help/writeWire.js.map +0 -1
- package/dist/policy/accounts.d.ts +0 -13
- package/dist/policy/accounts.d.ts.map +0 -1
- package/dist/policy/accounts.js +0 -31
- package/dist/policy/accounts.js.map +0 -1
- package/dist/policy/analysis.d.ts.map +0 -1
- package/dist/policy/analysis.js.map +0 -1
- package/dist/policy/category.d.ts.map +0 -1
- package/dist/policy/category.js.map +0 -1
- package/dist/policy/goals.d.ts +0 -15
- package/dist/policy/goals.d.ts.map +0 -1
- package/dist/policy/goals.js +0 -33
- package/dist/policy/goals.js.map +0 -1
- package/dist/policy/index.d.ts +0 -13
- package/dist/policy/index.d.ts.map +0 -1
- package/dist/policy/index.js +0 -7
- package/dist/policy/index.js.map +0 -1
- package/dist/policy/record.d.ts +0 -27
- package/dist/policy/record.d.ts.map +0 -1
- package/dist/policy/record.js +0 -89
- package/dist/policy/record.js.map +0 -1
- package/dist/policy/wakewords.d.ts +0 -18
- package/dist/policy/wakewords.d.ts.map +0 -1
- package/dist/policy/wakewords.js +0 -126
- package/dist/policy/wakewords.js.map +0 -1
- package/dist/record/collect.d.ts.map +0 -1
- package/dist/record/collect.js.map +0 -1
- package/dist/record/collectBody.d.ts.map +0 -1
- package/dist/record/collectBody.js.map +0 -1
- package/dist/record/commands.d.ts.map +0 -1
- package/dist/record/commands.js.map +0 -1
- package/dist/record/index.d.ts.map +0 -1
- package/dist/record/index.js.map +0 -1
- package/dist/record/receipt.d.ts.map +0 -1
- package/dist/record/receipt.js.map +0 -1
- package/dist/record/receiptBody.d.ts +0 -5
- package/dist/record/receiptBody.d.ts.map +0 -1
- package/dist/record/receiptBody.js.map +0 -1
- package/dist/record/scene-batch.d.ts.map +0 -1
- package/dist/record/scene-batch.js +0 -211
- package/dist/record/scene-batch.js.map +0 -1
- package/dist/record/scene-borrow.d.ts.map +0 -1
- package/dist/record/scene-borrow.js +0 -285
- package/dist/record/scene-borrow.js.map +0 -1
- package/dist/record/scene-collect.d.ts.map +0 -1
- package/dist/record/scene-collect.js +0 -294
- package/dist/record/scene-collect.js.map +0 -1
- package/dist/record/scene-expense.d.ts.map +0 -1
- package/dist/record/scene-expense.js +0 -21
- package/dist/record/scene-expense.js.map +0 -1
- package/dist/record/scene-income.d.ts.map +0 -1
- package/dist/record/scene-income.js +0 -219
- package/dist/record/scene-income.js.map +0 -1
- package/dist/record/scene-installment.d.ts.map +0 -1
- package/dist/record/scene-installment.js +0 -248
- package/dist/record/scene-installment.js.map +0 -1
- package/dist/record/scene-lend.d.ts.map +0 -1
- package/dist/record/scene-lend.js +0 -273
- package/dist/record/scene-lend.js.map +0 -1
- package/dist/record/scene-photo.d.ts.map +0 -1
- package/dist/record/scene-photo.js +0 -262
- package/dist/record/scene-photo.js.map +0 -1
- package/dist/record/scene-plain.d.ts.map +0 -1
- package/dist/record/scene-plain.js +0 -221
- package/dist/record/scene-plain.js.map +0 -1
- package/dist/record/scene-refund.d.ts.map +0 -1
- package/dist/record/scene-refund.js +0 -281
- package/dist/record/scene-refund.js.map +0 -1
- package/dist/record/scene-reimburse-done.d.ts.map +0 -1
- package/dist/record/scene-reimburse-done.js +0 -288
- package/dist/record/scene-reimburse-done.js.map +0 -1
- package/dist/record/scene-reimburse.d.ts.map +0 -1
- package/dist/record/scene-reimburse.js +0 -224
- package/dist/record/scene-reimburse.js.map +0 -1
- package/dist/record/scene-repay.d.ts.map +0 -1
- package/dist/record/scene-repay.js +0 -294
- package/dist/record/scene-repay.js.map +0 -1
- package/dist/record/scene-restore.d.ts.map +0 -1
- package/dist/record/scene-restore.js +0 -250
- package/dist/record/scene-restore.js.map +0 -1
- package/dist/record/scene-undo.d.ts.map +0 -1
- package/dist/record/scene-undo.js +0 -262
- package/dist/record/scene-undo.js.map +0 -1
- package/dist/record/scene-update.d.ts.map +0 -1
- package/dist/record/scene-update.js +0 -249
- package/dist/record/scene-update.js.map +0 -1
- package/dist/record/scene.d.ts.map +0 -1
- package/dist/record/scene.js.map +0 -1
- package/dist/record/slots.d.ts.map +0 -1
- package/dist/record/write.d.ts.map +0 -1
- package/dist/record/write.js.map +0 -1
- package/dist/render/helpFile.d.ts.map +0 -1
- package/dist/render/helpFile.js.map +0 -1
- package/dist/render/helpPaths.d.ts +0 -19
- package/dist/render/helpPaths.d.ts.map +0 -1
- package/dist/render/helpPaths.js +0 -19
- package/dist/render/helpPaths.js.map +0 -1
- package/dist/render/views.d.ts +0 -64
- package/dist/render/views.d.ts.map +0 -1
- package/dist/render/views.js.map +0 -1
- package/dist/shared/blockedSlots.d.ts.map +0 -1
- package/dist/shared/blockedSlots.js.map +0 -1
- package/dist/shared/candidatePick.d.ts.map +0 -1
- package/dist/shared/candidatePick.js.map +0 -1
- package/dist/shared/collectFrame.js +0 -34
- package/dist/shared/collectFrame.js.map +0 -1
- package/dist/shared/diffTable.d.ts.map +0 -1
- package/dist/shared/diffTable.js.map +0 -1
- package/dist/shared/duplicateNote.d.ts.map +0 -1
- package/dist/shared/duplicateNote.js.map +0 -1
- package/dist/shared/emptyNote.d.ts.map +0 -1
- package/dist/shared/emptyNote.js.map +0 -1
- package/dist/shared/errorReceipt.d.ts.map +0 -1
- package/dist/shared/errorReceipt.js.map +0 -1
- package/dist/shared/flowSteps.d.ts.map +0 -1
- package/dist/shared/flowSteps.js.map +0 -1
- package/dist/shared/installmentPreview.d.ts.map +0 -1
- package/dist/shared/installmentPreview.js.map +0 -1
- package/dist/shared/outsideScan.d.ts.map +0 -1
- package/dist/shared/outsideScan.js.map +0 -1
- package/dist/shared/photoEscape.d.ts.map +0 -1
- package/dist/shared/photoEscape.js.map +0 -1
- package/dist/shared/prefillNote.d.ts.map +0 -1
- package/dist/shared/prefillNote.js.map +0 -1
- package/dist/shared/receiptParts.d.ts.map +0 -1
- package/dist/shared/receiptParts.js.map +0 -1
- package/dist/shared/recentPicks.d.ts.map +0 -1
- package/dist/shared/recentPicks.js +0 -41
- package/dist/shared/recentPicks.js.map +0 -1
- package/dist/shared/recordPicker.d.ts.map +0 -1
- package/dist/shared/recordPicker.js.map +0 -1
- package/dist/shared/rowEditorTable.d.ts.map +0 -1
- package/dist/shared/rowEditorTable.js.map +0 -1
- package/dist/shared/summaryRow.d.ts.map +0 -1
- package/dist/shared/summaryRow.js.map +0 -1
- package/dist/shared/typeBadge.d.ts.map +0 -1
- package/dist/shared/typeBadge.js.map +0 -1
- package/dist/shared/userWording.d.ts.map +0 -1
- package/dist/shared/userWording.js.map +0 -1
- /package/dist/{shared → write}/candidatePick.d.ts +0 -0
- /package/dist/{record → write}/collect.js +0 -0
- /package/dist/{shared → write}/diffTable.d.ts +0 -0
- /package/dist/{shared → write}/duplicateNote.d.ts +0 -0
- /package/dist/{shared → write}/emptyNote.d.ts +0 -0
- /package/dist/{shared → write}/flowSteps.d.ts +0 -0
- /package/dist/{shared → write}/installmentPreview.d.ts +0 -0
- /package/dist/{shared → write}/outsideScan.d.ts +0 -0
- /package/dist/{shared → write}/photoEscape.d.ts +0 -0
- /package/dist/{shared → write}/prefillNote.d.ts +0 -0
- /package/dist/{record → write}/receipt.js +0 -0
- /package/dist/{shared → write}/recordPicker.d.ts +0 -0
- /package/dist/{shared → write}/rowEditorTable.d.ts +0 -0
- /package/dist/{record → write}/scene-batch.d.ts +0 -0
- /package/dist/{record → write}/scene-borrow.d.ts +0 -0
- /package/dist/{record → write}/scene-collect.d.ts +0 -0
- /package/dist/{record → write}/scene-expense.d.ts +0 -0
- /package/dist/{record → write}/scene-income.d.ts +0 -0
- /package/dist/{record → write}/scene-installment.d.ts +0 -0
- /package/dist/{record → write}/scene-lend.d.ts +0 -0
- /package/dist/{record → write}/scene-photo.d.ts +0 -0
- /package/dist/{record → write}/scene-plain.d.ts +0 -0
- /package/dist/{record → write}/scene-refund.d.ts +0 -0
- /package/dist/{record → write}/scene-reimburse-done.d.ts +0 -0
- /package/dist/{record → write}/scene-reimburse.d.ts +0 -0
- /package/dist/{record → write}/scene-repay.d.ts +0 -0
- /package/dist/{record → write}/scene-restore.d.ts +0 -0
- /package/dist/{record → write}/scene-undo.d.ts +0 -0
- /package/dist/{record → write}/scene-update.d.ts +0 -0
- /package/dist/{record → write}/slots.d.ts +0 -0
- /package/dist/{shared → write}/summaryRow.d.ts +0 -0
- /package/dist/{record → write}/write.d.ts +0 -0
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/** `bill.setup.run`(开始使用)的处理体:**六种 op 一处分流** + 四条「零决策」op 的活。
|
|
2
|
+
*
|
|
3
|
+
* 谁在用(一个调用点,指名):`./commands.js` 那条命令声明引本件——出口分派 `src/cli/cmd_read.ts`
|
|
4
|
+
* 只查注册表再调声明里的 `run`,不认这个命令名(#691 起「入口跟着声明走」)。
|
|
5
|
+
*
|
|
6
|
+
* **本件住哪四条 op**:初始化(`./init` 的做派:环境检测 → 数据目录 → 建库自愈 → 真跑一次读)、
|
|
7
|
+
* 初始化状态(三重判定+迁移块)、一键备份、查看备份。另外两条**各住自己的件**——
|
|
8
|
+
* 恢复(`./restore.js`)与导入(`./import.js` 那一条:CSV)——因为它们各自带着一整套安全顺序
|
|
9
|
+
* (D1 三件套/D2 四件),与本件的四条只读/幂等 op 不是同一批改动。
|
|
10
|
+
*
|
|
11
|
+
* 六种 op 与三片页型的对应写在 `./params.js` 的 `PAGE_OF_OP`;每条 op 的差异值住它那一件场景件。
|
|
12
|
+
* 本件只做三件事:**取数(库/备份目录)→ 按 op 的规矩动或不动数据 → 交给对应页型出整页**。
|
|
13
|
+
*
|
|
14
|
+
* **出口载荷的形状**(一处口径,六条 op 同形):`data = { ok, message, receipt }`——
|
|
15
|
+
* `ok`/`message` 是 `base-link-core` 的 `receipt` 形必填的两格;`receipt` 是本域自己的事实
|
|
16
|
+
* (哪种 op、报了什么读数),页面内置 envelope 与出口载荷**同源**(同一个对象摊开两处用),
|
|
17
|
+
* 与写入域/账户域「`receipt` 那一格的形状由各域自己定」同一条口径(`src/shared/commandSpec.ts`)。
|
|
18
|
+
*/
|
|
19
|
+
import { mkdirSync, rmSync, writeFileSync } from 'node:fs';
|
|
20
|
+
import { dirname, join } from 'node:path';
|
|
21
|
+
import { resolveBackupDir, resolveGoalsPath } from '../fetch/paths.js';
|
|
22
|
+
import { actionStamp } from '../shared/copyArea.js';
|
|
23
|
+
import { projectWakeWord } from '../triggers/wakeTable.js';
|
|
24
|
+
import { backupStampOf, createBackup, humanBytes, listBackups } from './backups.js';
|
|
25
|
+
import { blockedWizardDoc } from './blocked.js';
|
|
26
|
+
import { parseSetupOp, setupBlocked } from './params.js';
|
|
27
|
+
import { receiptEnvelopeOf } from './pageParts.js';
|
|
28
|
+
import { runImport } from './import.js';
|
|
29
|
+
import { runRestore } from './restore.js';
|
|
30
|
+
import { setupSceneFor } from './scene.js';
|
|
31
|
+
import { initSteps } from './steps.js';
|
|
32
|
+
import { readSetupStatus } from './status.js';
|
|
33
|
+
import { backupReceiptDoc } from './template-receipt.js';
|
|
34
|
+
import { listDoc } from './template-list.js';
|
|
35
|
+
import { wizardDoc } from './template-wizard.js';
|
|
36
|
+
/** 目录可写探测(老侧 `cli.py:111-125` 的 `.write_probe` 同法:真写一个再删,不凭猜)。 */
|
|
37
|
+
function dirWritable(dir) {
|
|
38
|
+
const probe = join(dir, '.write_probe');
|
|
39
|
+
try {
|
|
40
|
+
mkdirSync(dir, { recursive: true });
|
|
41
|
+
writeFileSync(probe, 'ok', 'utf8');
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
finally {
|
|
48
|
+
try {
|
|
49
|
+
rmSync(probe, { force: true });
|
|
50
|
+
}
|
|
51
|
+
catch { /* 删不掉不影响「写得进」这个结论 */ }
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/** 运行环境那一项(与出口预检同一条线:node ≥ 22.13)。 */
|
|
55
|
+
function nodeOk() {
|
|
56
|
+
const v = process.versions.node.split('.').map(Number);
|
|
57
|
+
return v[0] > 22 || (v[0] === 22 && v[1] >= 13);
|
|
58
|
+
}
|
|
59
|
+
/** 真跑一次读(`SELECT 1` + 数一遍 bills)——老侧把那句「SELECT 1 ✓ · bills 表 ✓」写死在文案里,
|
|
60
|
+
* 实际只跑了 `PRAGMA table_info` 与 `SELECT COUNT(*)`(`cli.py:252-253/262`);新侧真跑真报。 */
|
|
61
|
+
function verifyReadable(db) {
|
|
62
|
+
try {
|
|
63
|
+
db.db.prepare('SELECT 1 AS one').all();
|
|
64
|
+
db.db.prepare('SELECT COUNT(*) AS n FROM bills').all();
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/** 记第一笔那句口令(老侧 `init_wizard.html:158` 逐字同句:初始化完成后顺势推进到下一步,`#688` §二 D3)。 */
|
|
72
|
+
const NEXT_RECORD_PROMPT = '请加载「饼干记账」技能,帮我记一笔支出(唤醒词:记支出):\n\n'
|
|
73
|
+
+ ' 分类: ____(如:餐饮/外卖/午餐)\n 金额: ____(支出为负)\n 备注: ____(选填)';
|
|
74
|
+
/** 初始化(`op=init`):环境检测 → 数据目录 → 建库自愈 → 真跑一次读。**幂等**,重复跑安全。 */
|
|
75
|
+
function runInit(db, key, params) {
|
|
76
|
+
const scene = setupSceneFor('init');
|
|
77
|
+
const dir = dirname(db.path);
|
|
78
|
+
const status = readSetupStatus(db);
|
|
79
|
+
const writable = dirWritable(dir);
|
|
80
|
+
const envChecks = [
|
|
81
|
+
{ label: '运行环境', ok: nodeOk(), detail: 'node ' + process.versions.node + '(要 22.13 以上)' },
|
|
82
|
+
{ label: '数据目录', ok: writable, detail: dir + (writable ? '(可写)' : '(不可写)') },
|
|
83
|
+
];
|
|
84
|
+
const verifyOk = status.tableExists && verifyReadable(db);
|
|
85
|
+
const steps = initSteps({
|
|
86
|
+
envCount: envChecks.length,
|
|
87
|
+
envOk: envChecks.every((c) => c.ok),
|
|
88
|
+
envSummary: envChecks.every((c) => c.ok) ? '两项都过了' : '有没过的项',
|
|
89
|
+
dirPath: dir,
|
|
90
|
+
dirWritable: writable,
|
|
91
|
+
schemaOk: status.checks[1]?.ok === true,
|
|
92
|
+
columns: status.columns.length,
|
|
93
|
+
records: status.rows,
|
|
94
|
+
verifyOk,
|
|
95
|
+
});
|
|
96
|
+
const ready = status.ready && verifyOk;
|
|
97
|
+
const message = ready
|
|
98
|
+
? '已初始化:' + db.path + '(' + String(status.columns.length) + ' 列,现有记录 ' + String(status.rows) + ' 条)'
|
|
99
|
+
: '初始化没走完:库结构还不齐(现有记录 ' + String(status.rows) + ' 条)';
|
|
100
|
+
const receipt = {
|
|
101
|
+
op: 'init', db_path: db.path, records: status.rows, schema_ok: ready, repaired: status.repaired,
|
|
102
|
+
created: db.initialized,
|
|
103
|
+
};
|
|
104
|
+
const envelope = receiptEnvelopeOf(key, { ok: ready, message, ...receipt });
|
|
105
|
+
const html = wizardDoc({
|
|
106
|
+
op: 'init', scene, key, params, actionAt: actionStamp(), steps, envelope,
|
|
107
|
+
blocked: [], prompt: ready ? NEXT_RECORD_PROMPT : scene.promptOf(params),
|
|
108
|
+
promptLabel: ready ? '复制给助手:直接开始记第一笔' : '复制给助手:照这句先把初始化走完',
|
|
109
|
+
envChecks, ready, dbPath: db.path, records: status.rows, created: db.initialized,
|
|
110
|
+
});
|
|
111
|
+
return { data: { ok: ready, message, receipt }, html };
|
|
112
|
+
}
|
|
113
|
+
/** 初始化状态(`op=init-status`):只读三重判定 + 独立的迁移块。 */
|
|
114
|
+
function runStatus(db, key, params) {
|
|
115
|
+
const scene = setupSceneFor('init-status');
|
|
116
|
+
const status = readSetupStatus(db);
|
|
117
|
+
const message = status.ready
|
|
118
|
+
? '就绪:' + String(status.columns.length) + ' 列齐(含 deleted_at),库 ' + db.path
|
|
119
|
+
+ ',现有记录 ' + String(status.rows) + ' 条'
|
|
120
|
+
: '未就绪:' + (status.needsMigration ? '结构还是老版本' : '这个位置还不是一个记账库') + '(' + db.path + ')';
|
|
121
|
+
const receipt = {
|
|
122
|
+
op: 'init-status', db_path: db.path, records: status.rows, version: status.version,
|
|
123
|
+
repaired: status.repaired, ready: status.ready,
|
|
124
|
+
};
|
|
125
|
+
const envelope = receiptEnvelopeOf(key, { ok: status.ready, message, ...receipt });
|
|
126
|
+
const html = listDoc({ op: 'init-status', scene, key, params, actionAt: actionStamp(), status, envelope });
|
|
127
|
+
return { data: { ok: status.ready, message, receipt }, html };
|
|
128
|
+
}
|
|
129
|
+
/** 一键备份(`op=backup-create`):无条件造一份,出结果回执。 */
|
|
130
|
+
function runBackupCreate(db, key, params) {
|
|
131
|
+
const scene = setupSceneFor('backup-create');
|
|
132
|
+
const dir = resolveBackupDir();
|
|
133
|
+
const entry = createBackup({ db, dir, stamp: backupStampOf(new Date()), goalsPath: resolveGoalsPath() });
|
|
134
|
+
const entries = listBackups(dir);
|
|
135
|
+
const message = '已备份:' + entry.file + '(' + humanBytes(entry.bytes)
|
|
136
|
+
+ (entry.hasGoals ? ' + 目标那一份' : '') + ')';
|
|
137
|
+
const receipt = {
|
|
138
|
+
op: 'backup-create', backup: entry.file, path: entry.path, time: entry.time, bytes: entry.bytes,
|
|
139
|
+
has_goals: entry.hasGoals, count: entries.length,
|
|
140
|
+
};
|
|
141
|
+
const envelope = receiptEnvelopeOf(key, { ok: true, message, ...receipt });
|
|
142
|
+
const html = backupReceiptDoc({ scene, key, params, actionAt: actionStamp(), entry, total: entries.length, envelope });
|
|
143
|
+
return { data: { ok: true, message, receipt }, html };
|
|
144
|
+
}
|
|
145
|
+
/** 查看备份(`op=backup-list`):只读列一遍目录,空目录出空态与引导。 */
|
|
146
|
+
function runBackupList(key, params) {
|
|
147
|
+
const scene = setupSceneFor('backup-list');
|
|
148
|
+
const entries = listBackups(resolveBackupDir());
|
|
149
|
+
const ok = entries.length > 0;
|
|
150
|
+
const message = ok
|
|
151
|
+
? '备份 ' + String(entries.length) + ' 份,最新一份是 ' + entries[0].time
|
|
152
|
+
: '还没有备份(跟助手说一遍「备份」就会存一份)';
|
|
153
|
+
const receipt = {
|
|
154
|
+
op: 'backup-list', count: entries.length,
|
|
155
|
+
backups: entries.map((e) => ({
|
|
156
|
+
name: e.file, time: e.time, size: e.bytes, files: e.hasGoals ? '库 + 目标' : '只有库',
|
|
157
|
+
})),
|
|
158
|
+
};
|
|
159
|
+
const envelope = receiptEnvelopeOf(key, { ok, message, ...receipt });
|
|
160
|
+
const html = listDoc({ op: 'backup-list', scene, key, params, actionAt: actionStamp(), entries, envelope });
|
|
161
|
+
return { data: { ok, message, receipt }, html };
|
|
162
|
+
}
|
|
163
|
+
/** `bill.setup.run`:六种 op 一处分流(`op` 缺省=初始化状态,照老出口那一支的缺省)。 */
|
|
164
|
+
export function setupRun(params, db) {
|
|
165
|
+
const key = 'bill.setup.run';
|
|
166
|
+
const op = parseSetupOp(params);
|
|
167
|
+
// 缺必需槽位那一条只可能出在导入这一支(六种 op 里只有它有一个必填格)。
|
|
168
|
+
const missing = setupBlocked(op, params);
|
|
169
|
+
if (missing.length > 0) {
|
|
170
|
+
const scene = setupSceneFor('import');
|
|
171
|
+
const html = blockedWizardDoc({ op: 'import', scene, key, params, blocked: missing, actionAt: actionStamp() });
|
|
172
|
+
const message = projectWakeWord({ key: 'bill.setup.run', op: 'import' }) + '还差 ' + String(missing.length)
|
|
173
|
+
+ ' 项:' + missing.map((b) => b.label).join('、') + '(已出向导页,补齐之后跟助手说一遍)';
|
|
174
|
+
return { data: { ok: false, message, receipt: { op: 'import', blocked: missing } }, html };
|
|
175
|
+
}
|
|
176
|
+
if (op === 'init')
|
|
177
|
+
return runInit(db, key, params);
|
|
178
|
+
if (op === 'init-status')
|
|
179
|
+
return runStatus(db, key, params);
|
|
180
|
+
if (op === 'backup-create')
|
|
181
|
+
return runBackupCreate(db, key, params);
|
|
182
|
+
if (op === 'backup-list')
|
|
183
|
+
return runBackupList(key, params);
|
|
184
|
+
if (op === 'restore')
|
|
185
|
+
return runRestore(db, key, params);
|
|
186
|
+
return runImport(db, key, params);
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/setup/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-backup-create.d.ts","sourceRoot":"","sources":["../../src/setup/scene-backup-create.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,eAAO,MAAM,KAAK,EAAE,UAUnB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** 场景件:**一键备份**(`op=backup-create`)——本件只是差异声明,块位序列住 `./template-receipt.js`。
|
|
2
|
+
*
|
|
3
|
+
* 本件的差异(老侧 `templates/开始使用/backup.html` + `scripts/setup/cli.py` 的 `cmd_backup_create`):
|
|
4
|
+
* ① 「备份」这一条词**两个场景**(本条出结果回执页、`./scene-backup-list.js` 出记录列表页)——
|
|
5
|
+
* `t687-parity-审计清单.md` §2 第 66-70 行点名的形状,本域两条各一件;
|
|
6
|
+
* ② 老侧一份备份是**一个目录**(`backup.py:63-69` 新建时间戳目录,里面放库与 `goals.json`),
|
|
7
|
+
* 新侧一份备份是**一个文件**(`backup.dir` + `backup.stem`,`src/fetch/paths.js:71-74`)——
|
|
8
|
+
* 与 #726 定的配置口径同源,差异记在差异表;
|
|
9
|
+
* ③ 老侧 `content` 那句「数据库 + 目标(goals.json)」是**硬编码**(`cli.py:328`),影子件不在也不改口;
|
|
10
|
+
* 新侧照实报「这一份里有什么」。
|
|
11
|
+
*/
|
|
12
|
+
import { projectWakeWord } from '../triggers/wakeTable.js';
|
|
13
|
+
const WORD = projectWakeWord({ key: 'bill.setup.run', op: 'backup-create' });
|
|
14
|
+
const KEY = 'bill.setup.run';
|
|
15
|
+
export const SCENE = {
|
|
16
|
+
id: 'backup-create',
|
|
17
|
+
sceneId: 'setup_backup_create',
|
|
18
|
+
key: KEY,
|
|
19
|
+
op: 'backup-create',
|
|
20
|
+
page: 'receipt',
|
|
21
|
+
title: '一键备份',
|
|
22
|
+
caliber: '备份完成',
|
|
23
|
+
subtitle: '数据库 + 目标(goals.json)已归档',
|
|
24
|
+
promptOf: () => '请加载「饼干记账」技能,帮我备份饼干记账的数据(唤醒词:' + WORD + '):\n',
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=scene-backup-create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-backup-create.js","sourceRoot":"","sources":["../../src/setup/scene-backup-create.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,MAAM,IAAI,GAAW,eAAe,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC;AACrF,MAAM,GAAG,GAAG,gBAAyB,CAAC;AAEtC,MAAM,CAAC,MAAM,KAAK,GAAe;IAC/B,EAAE,EAAE,eAAe;IACnB,OAAO,EAAE,qBAAqB;IAC9B,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,yBAAyB;IACnC,QAAQ,EAAE,GAAG,EAAE,CAAC,8BAA8B,GAAG,IAAI,GAAG,MAAM;CAC/D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-backup-list.d.ts","sourceRoot":"","sources":["../../src/setup/scene-backup-list.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,eAAO,MAAM,KAAK,EAAE,UAUnB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** 场景件:**查看备份**(`op=backup-list`)——本件只是差异声明,块位序列住 `./template-list.js`。
|
|
2
|
+
*
|
|
3
|
+
* 本件的差异(老侧 `templates/开始使用/backup_list.html` + `scripts/setup/cli.py` 的 `cmd_backup_list`):
|
|
4
|
+
* ① 与 `./scene-backup-create.js` 同一个唤醒词「备份」,**两条场景各一件**;
|
|
5
|
+
* ② 老侧列表项报的是「目录名 · 时间 · 该目录下所有文件大小之和」(`cli.py:361-364`),
|
|
6
|
+
* 新侧一份备份是一个文件,故报「备份文件 · 备份时间 · 大小 · 里面有什么」;
|
|
7
|
+
* ③ 老侧空态那一句「还没有备份 + 点下方「一键备份」,数据库和目标数据会自动归档」(`backup_list.html:117`)
|
|
8
|
+
* 是本模板唯一的 `emptyState`——新侧照它的意思落成空态块 + 引导句(`./template-list.js` 里那一支)。
|
|
9
|
+
*/
|
|
10
|
+
import { projectWakeWord } from '../triggers/wakeTable.js';
|
|
11
|
+
const WORD = projectWakeWord({ key: 'bill.setup.run', op: 'backup-list' });
|
|
12
|
+
const KEY = 'bill.setup.run';
|
|
13
|
+
export const SCENE = {
|
|
14
|
+
id: 'backup-list',
|
|
15
|
+
sceneId: 'setup_backup_list',
|
|
16
|
+
key: KEY,
|
|
17
|
+
op: 'backup-list',
|
|
18
|
+
page: 'list',
|
|
19
|
+
title: '查看备份',
|
|
20
|
+
caliber: '备份列表',
|
|
21
|
+
subtitle: '备份目录里的这些份',
|
|
22
|
+
promptOf: () => '请加载「饼干记账」技能,帮我看看有哪些备份(唤醒词:' + WORD + '):\n',
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=scene-backup-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-backup-list.js","sourceRoot":"","sources":["../../src/setup/scene-backup-list.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,MAAM,IAAI,GAAW,eAAe,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;AACnF,MAAM,GAAG,GAAG,gBAAyB,CAAC;AAEtC,MAAM,CAAC,MAAM,KAAK,GAAe;IAC/B,EAAE,EAAE,aAAa;IACjB,OAAO,EAAE,mBAAmB;IAC5B,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,WAAW;IACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,4BAA4B,GAAG,IAAI,GAAG,MAAM;CAC7D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-import.d.ts","sourceRoot":"","sources":["../../src/setup/scene-import.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,eAAO,MAAM,KAAK,EAAE,UAiBnB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** 场景件:**导入 CSV 账单**(`op=import`)——本件只是差异声明,块位序列住 `./template-wizard.js`。
|
|
2
|
+
*
|
|
3
|
+
* 本件的差异(老侧 `templates/开始使用/import.html` + `scripts/setup/cli.py` 的 `cmd_import`):
|
|
4
|
+
* ① **老侧这一支四位一体的安全缺口**(`#688` §二 D2):风险词「备份/覆盖/警告/注意/丢失」
|
|
5
|
+
* 在 `import.html` 与其数据源里**逐词 0 命中**(`.scratch/t731/old-setup.md` §10)——
|
|
6
|
+
* 新侧四件全补:明示「本次将新增 N 行、不覆盖已有记录」+ 导入前**自动备份一次** +
|
|
7
|
+
* **重复导入检测** + 页面级结果卡(成功/失败行数 + 失败原因);
|
|
8
|
+
* ② 老侧确认门形态里**好的一半照抄**:把机器猜的每一列都写明猜了哪一列、哪些必填
|
|
9
|
+
* (`import.html:159/161-163`,预览只显示前 8 行)——新侧的列映射表与预览表同义;
|
|
10
|
+
* ③ 老侧逐行 `insert_record`(每行一次连接、各自 commit,`cli.py:621-625`)——中途失败已写的行不回退;
|
|
11
|
+
* 新侧整批一个事务(`./importer.js` 的 `applyImport`);
|
|
12
|
+
* ④ 「向导」这条形状老侧在本页其实没有(无步骤模型,`setup.yaml:82` 标了 `向导` 但页里没有步骤条)——
|
|
13
|
+
* 新侧按片型补齐步骤条(`./steps.js` 的四步)。
|
|
14
|
+
*/
|
|
15
|
+
import { projectWakeWord } from '../triggers/wakeTable.js';
|
|
16
|
+
const WORD = projectWakeWord({ key: 'bill.setup.run', op: 'import' });
|
|
17
|
+
const KEY = 'bill.setup.run';
|
|
18
|
+
export const SCENE = {
|
|
19
|
+
id: 'import',
|
|
20
|
+
sceneId: 'setup_import',
|
|
21
|
+
key: KEY,
|
|
22
|
+
op: 'import',
|
|
23
|
+
page: 'wizard',
|
|
24
|
+
title: '导入 CSV 账单',
|
|
25
|
+
caliber: '列映射向导',
|
|
26
|
+
subtitle: '列映射向导 · 前几行预览,映射可修改',
|
|
27
|
+
promptOf: (params) => {
|
|
28
|
+
const file = typeof params['file'] === 'string' && params['file'].trim() !== '' ? params['file'].trim() : '____';
|
|
29
|
+
const mapping = typeof params['mapping'] === 'string' && params['mapping'].trim() !== ''
|
|
30
|
+
? params['mapping'].trim()
|
|
31
|
+
: '____(自动识别)';
|
|
32
|
+
return '请加载「饼干记账」技能,帮我导入 CSV 账单(唤醒词:' + WORD + '):\n\n'
|
|
33
|
+
+ ' 文件路径: ' + file + '\n 列映射: ' + mapping + '\n';
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=scene-import.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-import.js","sourceRoot":"","sources":["../../src/setup/scene-import.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,MAAM,IAAI,GAAW,eAAe,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC9E,MAAM,GAAG,GAAG,gBAAyB,CAAC;AAEtC,MAAM,CAAC,MAAM,KAAK,GAAe;IAC/B,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,cAAc;IACvB,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,WAAW;IAClB,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,qBAAqB;IAC/B,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;QACnB,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QACjH,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;YACtF,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE;YAC1B,CAAC,CAAC,YAAY,CAAC;QACjB,OAAO,8BAA8B,GAAG,IAAI,GAAG,QAAQ;cACnD,UAAU,GAAG,IAAI,GAAG,WAAW,GAAG,OAAO,GAAG,IAAI,CAAC;IACvD,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** 场景件:**初始化状态**(`op=init-status`)——本件只是差异声明,块位序列住 `./template-list.js`。
|
|
2
|
+
*
|
|
3
|
+
* 本件的差异(老侧 `templates/开始使用/init_status.html` + `scripts/setup/cli.py` 的 `cmd_init_status`):
|
|
4
|
+
* ① 判定项名照老侧:数据存在/schema/版本(`cli.py:162/206/207`)——新侧落成「数据存在/结构版本/就绪」
|
|
5
|
+
* 三格读数(`./status.js` 的三重判定),三件的**与**才是 `ready`;
|
|
6
|
+
* ② 迁移提示**独立成块**(`#688` §二 C11):老侧那段提示指的是「运行某个迁移脚本」并**印出脚本路径**
|
|
7
|
+
* (`cli.py:186-188`)——新侧不印脚本路径(裁定 1),改报「本次打开时自动补了什么」
|
|
8
|
+
* (库句柄的 DDL 自愈,见 `src/fetch/db.ts` 的 `repaired`);
|
|
9
|
+
* ③ 老侧 `init_status.html:145` 在零记录时正确显示「现有记录 0 条」(不吞 0)——这条**照抄**
|
|
10
|
+
* (`#688` 裁定 4 的正面例子)。
|
|
11
|
+
*/
|
|
12
|
+
import type { SetupScene } from './scene.js';
|
|
13
|
+
export declare const SCENE: SetupScene;
|
|
14
|
+
//# sourceMappingURL=scene-init-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-init-status.d.ts","sourceRoot":"","sources":["../../src/setup/scene-init-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAQ7C,eAAO,MAAM,KAAK,EAAE,UAUnB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const KEY = 'bill.setup.run';
|
|
2
|
+
/** 未就绪时那块引导说的仍是「初始化」那一句(老侧 `init_status.html:151` 逐字同句)。
|
|
3
|
+
* 本件不另取唤醒词字面量:引导那一句是**另一条场景**的口令,取自 `./scene-init.js` 那一支的写法。 */
|
|
4
|
+
const INIT_PROMPT = '请加载「饼干记账」技能,帮我开始使用饼干记账(唤醒词:初始化):\n';
|
|
5
|
+
export const SCENE = {
|
|
6
|
+
id: 'init-status',
|
|
7
|
+
sceneId: 'setup_init_status',
|
|
8
|
+
key: KEY,
|
|
9
|
+
op: 'init-status',
|
|
10
|
+
page: 'list',
|
|
11
|
+
title: '初始化状态',
|
|
12
|
+
caliber: '三重判定',
|
|
13
|
+
subtitle: '数据存在 · 结构版本 · 就绪',
|
|
14
|
+
promptOf: () => INIT_PROMPT,
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=scene-init-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-init-status.js","sourceRoot":"","sources":["../../src/setup/scene-init-status.ts"],"names":[],"mappings":"AAaA,MAAM,GAAG,GAAG,gBAAyB,CAAC;AAEtC;kEACkE;AAClE,MAAM,WAAW,GAAG,oCAAoC,CAAC;AAEzD,MAAM,CAAC,MAAM,KAAK,GAAe;IAC/B,EAAE,EAAE,aAAa;IACjB,OAAO,EAAE,mBAAmB;IAC5B,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,kBAAkB;IAC5B,QAAQ,EAAE,GAAG,EAAE,CAAC,WAAW;CAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-init.d.ts","sourceRoot":"","sources":["../../src/setup/scene-init.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,eAAO,MAAM,KAAK,EAAE,UAUnB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** 场景件:**初始化**(`op=init`)——本件只是差异声明,块位序列住 `./template-wizard.js`。
|
|
2
|
+
*
|
|
3
|
+
* 本件的差异(老侧 `templates/开始使用/init_wizard.html` + `scripts/setup/cli.py` 的 `cmd_init`):
|
|
4
|
+
* ① 步骤名四条照老侧四处同名写法:环境检测/数据目录确认/建库(幂等自愈)/只读验证;
|
|
5
|
+
* ② 老侧「只读验证」那一步的 detail 是**硬编码**「SELECT 1 ✓ · bills 表 ✓」(`cli.py:262`),
|
|
6
|
+
* 而它实际只跑了 `PRAGMA table_info` 与 `SELECT COUNT(*)`(`cli.py:252-253`)——新侧真跑真报,
|
|
7
|
+
* 那两句读数由 `./run.js` 从真结果里取(见 `docs/skills/skill-bill/t731-差异表.md`);
|
|
8
|
+
* ③ 老侧环境检测在**每一步**都会 `mkdir` 数据目录并短暂写一个探测文件(`cli.py:114-133`),
|
|
9
|
+
* 新侧照旧做真探测(可写才报可写),但探测文件用完即删、不留痕。
|
|
10
|
+
*/
|
|
11
|
+
import { projectWakeWord } from '../triggers/wakeTable.js';
|
|
12
|
+
const WORD = projectWakeWord({ key: 'bill.setup.run', op: 'init' });
|
|
13
|
+
const KEY = 'bill.setup.run';
|
|
14
|
+
export const SCENE = {
|
|
15
|
+
id: 'init',
|
|
16
|
+
sceneId: 'setup_init_wizard',
|
|
17
|
+
key: KEY,
|
|
18
|
+
op: 'init',
|
|
19
|
+
page: 'wizard',
|
|
20
|
+
title: '首次使用向导',
|
|
21
|
+
caliber: '4 步零决策',
|
|
22
|
+
subtitle: '4 步零决策 · 自动检测 · 一次成功',
|
|
23
|
+
promptOf: () => '请加载「饼干记账」技能,帮我开始使用饼干记账(唤醒词:' + WORD + '):\n',
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=scene-init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-init.js","sourceRoot":"","sources":["../../src/setup/scene-init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,MAAM,IAAI,GAAW,eAAe,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC5E,MAAM,GAAG,GAAG,gBAAyB,CAAC;AAEtC,MAAM,CAAC,MAAM,KAAK,GAAe;IAC/B,EAAE,EAAE,MAAM;IACV,OAAO,EAAE,mBAAmB;IAC5B,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,sBAAsB;IAChC,QAAQ,EAAE,GAAG,EAAE,CAAC,6BAA6B,GAAG,IAAI,GAAG,MAAM;CAC9D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-restore.d.ts","sourceRoot":"","sources":["../../src/setup/scene-restore.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,eAAO,MAAM,KAAK,EAAE,UAenB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/** 场景件:**从备份恢复**(`op=restore`)——本件只是差异声明,块位序列住 `./template-wizard.js`。
|
|
2
|
+
*
|
|
3
|
+
* 本件的差异(老侧 `templates/开始使用/restore.html` + `scripts/backup.py` 的 `restore_backup`):
|
|
4
|
+
* ① **本域最高危缺陷在这里被修掉**(`#688` §二 D5/`.scratch/t731/old-setup.md` §7(a)):老侧切换备份后
|
|
5
|
+
* 详情卡与步骤说明仍读初值 `sel`(`restore.html:141-145`/`:135`),而高亮与复制文案用新选的
|
|
6
|
+
* (`restore.html:167-169`/`:174`)——**确认前看到的不是将要恢复的**。新侧「选中的那一份」只有一处
|
|
7
|
+
* (`./template-wizard.js` 的 `RestoreWizardInput.selected`),详情、步骤说明、口令三处都从它派生;
|
|
8
|
+
* ② 恢复前**无条件**自动备份现状(老侧 `backup.py:122-124`,原样继承)+ 显式覆盖警告
|
|
9
|
+
* (老侧 `restore.html:159` 的原文意思)+ 警告里写清「怎么回去」;
|
|
10
|
+
* ③ 老侧是「先覆盖、后校验」(`backup.py:128-131` 在 `:139-142` 之前)——新侧把**校验挪到覆盖之前**
|
|
11
|
+
* (先验那一份备份读得动,再动现状),失败时点名现状备份(老侧 `backup.py:145` 那句的意思);
|
|
12
|
+
* ④ 老侧步骤号写死 2/3 且总数不显示(`restore.html:136/138`)——新侧编号与总数都由 `./steps.js` 算。
|
|
13
|
+
*/
|
|
14
|
+
import { projectWakeWord } from '../triggers/wakeTable.js';
|
|
15
|
+
const WORD = projectWakeWord({ key: 'bill.setup.run', op: 'restore' });
|
|
16
|
+
const KEY = 'bill.setup.run';
|
|
17
|
+
export const SCENE = {
|
|
18
|
+
id: 'restore',
|
|
19
|
+
sceneId: 'setup_restore',
|
|
20
|
+
key: KEY,
|
|
21
|
+
op: 'restore',
|
|
22
|
+
page: 'wizard',
|
|
23
|
+
title: '从备份恢复',
|
|
24
|
+
caliber: '详情预览',
|
|
25
|
+
subtitle: '预览详情 → 确认 → 恢复 → 验证(恢复前自动备份现状)',
|
|
26
|
+
/** 口令里那一格照老侧写「备 份」(中间两个空格,`scenes/setup.yaml:72` 逐字同形);
|
|
27
|
+
* 给了 `name` 就填选中的那一份,没给写占位(与老侧 `restore.html:174` 的 `'____'` 同义)。 */
|
|
28
|
+
promptOf: (params) => {
|
|
29
|
+
const name = typeof params['name'] === 'string' && params['name'].trim() !== '' ? params['name'].trim() : '____';
|
|
30
|
+
return '请加载「饼干记账」技能,帮我从备份恢复数据(唤醒词:' + WORD + '):\n\n 备 份: ' + name + ' (默认最新备份)\n';
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=scene-restore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene-restore.js","sourceRoot":"","sources":["../../src/setup/scene-restore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAG3D,MAAM,IAAI,GAAW,eAAe,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AAC/E,MAAM,GAAG,GAAG,gBAAyB,CAAC;AAEtC,MAAM,CAAC,MAAM,KAAK,GAAe;IAC/B,EAAE,EAAE,SAAS;IACb,OAAO,EAAE,eAAe;IACxB,GAAG,EAAE,GAAG;IACR,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,gCAAgC;IAC1C;0EACsE;IACtE,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;QACnB,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QACjH,OAAO,4BAA4B,GAAG,IAAI,GAAG,gBAAgB,GAAG,IAAI,GAAG,aAAa,CAAC;IACvF,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { SetupOp, SetupPage } from './params.js';
|
|
2
|
+
/** 一件场景件:一条场景(=一种 op)的落点与差异值。 */
|
|
3
|
+
export interface SetupScene {
|
|
4
|
+
/** 件的名字(与文件名 `scene-<id>.ts` 对得上)。 */
|
|
5
|
+
readonly id: string;
|
|
6
|
+
/** 域声明里的场景 id(`./declaration.js` 的 `scenes[].id`;`测试`按它逐条对账)。 */
|
|
7
|
+
readonly sceneId: string;
|
|
8
|
+
readonly key: 'bill.setup.run';
|
|
9
|
+
readonly op: SetupOp;
|
|
10
|
+
/** 这一件出哪一片页型。 */
|
|
11
|
+
readonly page: SetupPage;
|
|
12
|
+
/** 页面名(正文最大那一个字;老侧六张模板的 `<h1>` 逐字同句)。 */
|
|
13
|
+
readonly title: string;
|
|
14
|
+
/** 徽章第二枚那句口径(老侧 chips 里那一枚,如「4 步零决策」)。 */
|
|
15
|
+
readonly caliber: string;
|
|
16
|
+
/** 副标题(老侧六张模板的 `data.subtitle` 同句)。 */
|
|
17
|
+
readonly subtitle: string;
|
|
18
|
+
/** 给助手那句口令(复制按钮拷走的那一段;**纯文本**,不带任何渲染调用)。 */
|
|
19
|
+
readonly promptOf: (params: Record<string, unknown>) => string;
|
|
20
|
+
}
|
|
21
|
+
/** 6 行的落点表(**唯一定义地**):顺序=域声明里那五条词的书写顺序(初始化/初始化状态/备份/恢复备份/导入)。 */
|
|
22
|
+
export declare const SETUP_SCENES: readonly SetupScene[];
|
|
23
|
+
/** 取件:按 `op` 认(六种 op 各一件)。认不得的 op 即抛——**不猜、不兜底**
|
|
24
|
+
* (`op` 已在 `./params.js` 的 `parseSetupOp` 拦过一道,走到这里还认不得即是代码缺陷)。 */
|
|
25
|
+
export declare function setupSceneFor(op: SetupOp): SetupScene;
|
|
26
|
+
//# sourceMappingURL=scene.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/setup/scene.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAQtD,iCAAiC;AACjC,MAAM,WAAW,UAAU;IACzB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,iBAAiB;IACjB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;CAChE;AAED,iEAAiE;AACjE,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAE7C,CAAC;AAIF;oEACoE;AACpE,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,UAAU,CAMrD"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/** 开始使用域场景件的公共契约与落点表(**唯一定义地**)。
|
|
2
|
+
*
|
|
3
|
+
* 本件回答两件事:
|
|
4
|
+
* ① 一件场景件长什么样——`SetupScene`(id/命令全名/认的 op/哪一片页型/页面名/徽章口径/
|
|
5
|
+
* 副标题/给助手那句口令);
|
|
6
|
+
* ② 一条 op 该落哪一件——`setupSceneFor`。
|
|
7
|
+
*
|
|
8
|
+
* 落点表有 **6 行**:六条场景(`scenes/setup.yaml` 的六个 `scenario_id`)一件一支,其中「备份」一词两支
|
|
9
|
+
* (一键备份 `scene-backup-create.ts` 出结果回执页、查看备份 `scene-backup-list.ts` 出记录列表页)——
|
|
10
|
+
* 这正是 `t687-parity-审计清单.md` §2 第 66-70 行点名的那个形状。
|
|
11
|
+
*
|
|
12
|
+
* 六件按**三片页型**分(`packages/skill-bill/docs/t685-按域页型表.md` §2.7 那三行):
|
|
13
|
+
* 向导(`./template-wizard.js`)盖初始化/恢复备份/导入;结果回执(`./template-receipt.js`)盖一键备份;
|
|
14
|
+
* 记录列表(`./template-list.js`)盖查看备份/初始化状态。
|
|
15
|
+
*
|
|
16
|
+
* 场景件**只声明差异值**(页面名、徽章口径、副标题、给助手那句口令),一行块序都不写、不 import 任何
|
|
17
|
+
* 块位渲染函数——判据乙那道门(`scripts/check-scene-shape.mjs`)扫的就是这里。
|
|
18
|
+
*
|
|
19
|
+
* 谁在用(两个调用点,指名):① `./run.js`——六种 op 的处理体按 op 取件;② 测试按既有取法直取本表。
|
|
20
|
+
*/
|
|
21
|
+
import { BillPolicyError } from '../fetch/errors.js';
|
|
22
|
+
import { SCENE as sceneBackupCreate } from './scene-backup-create.js';
|
|
23
|
+
import { SCENE as sceneBackupList } from './scene-backup-list.js';
|
|
24
|
+
import { SCENE as sceneImport } from './scene-import.js';
|
|
25
|
+
import { SCENE as sceneInitStatus } from './scene-init-status.js';
|
|
26
|
+
import { SCENE as sceneInit } from './scene-init.js';
|
|
27
|
+
import { SCENE as sceneRestore } from './scene-restore.js';
|
|
28
|
+
/** 6 行的落点表(**唯一定义地**):顺序=域声明里那五条词的书写顺序(初始化/初始化状态/备份/恢复备份/导入)。 */
|
|
29
|
+
export const SETUP_SCENES = [
|
|
30
|
+
sceneInit, sceneInitStatus, sceneBackupCreate, sceneBackupList, sceneRestore, sceneImport,
|
|
31
|
+
];
|
|
32
|
+
const BY_OP = new Map(SETUP_SCENES.map((s) => [s.op, s]));
|
|
33
|
+
/** 取件:按 `op` 认(六种 op 各一件)。认不得的 op 即抛——**不猜、不兜底**
|
|
34
|
+
* (`op` 已在 `./params.js` 的 `parseSetupOp` 拦过一道,走到这里还认不得即是代码缺陷)。 */
|
|
35
|
+
export function setupSceneFor(op) {
|
|
36
|
+
const hit = BY_OP.get(op);
|
|
37
|
+
if (hit === undefined) {
|
|
38
|
+
throw new BillPolicyError('POLICY_BAD_INPUT', '开始使用域没有这一支操作:' + String(op));
|
|
39
|
+
}
|
|
40
|
+
return hit;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=scene.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene.js","sourceRoot":"","sources":["../../src/setup/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAsB3D,iEAAiE;AACjE,MAAM,CAAC,MAAM,YAAY,GAA0B;IACjD,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW;CAC1F,CAAC;AAEF,MAAM,KAAK,GAAG,IAAI,GAAG,CAAsB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/E;oEACoE;AACpE,MAAM,UAAU,aAAa,CAAC,EAAW;IACvC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,eAAe,CAAC,kBAAkB,EAAE,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/** 开始使用域的**初始化状态**事实(`op=init-status`,`t685-按域页型表.md` §2.7 的「记录列表」页型里那一支状态页)。
|
|
2
|
+
*
|
|
3
|
+
* 老侧对应件:`开始使用/init_status.html:140-147`(英雄区 + 检查清单 + 迁移块 + 引导块)与
|
|
4
|
+
* `scripts/setup/cli.py` 的 `cmd_init_status`。三重判定=**数据存在/结构版本/就绪**;
|
|
5
|
+
* 迁移提示**独立成块**(`#688` §二 C11:`schema` 迁移有专属样式块与「需要迁移」标题,不混进普通检查项)。
|
|
6
|
+
*
|
|
7
|
+
* 一处与老侧不同的口径(记在 `docs/skills/skill-bill/t731-差异表.md`):老侧靠「读 schema 版本号再自己迁移」,
|
|
8
|
+
* 本仓的库句柄在打开时就把 v1.0 的老库补成 v2.0(`src/fetch/db.ts` 的 DDL 自愈)——补了什么**当面报出来**
|
|
9
|
+
* (`BillDb.repaired`),所以迁移块报的是「本次补了什么」这一件真事实,而不是一句无人看见的提示。
|
|
10
|
+
*/
|
|
11
|
+
import type { BillDb } from '../fetch/index.js';
|
|
12
|
+
/** 一条检查项(三重判定里的一重)。 */
|
|
13
|
+
export interface StatusCheck {
|
|
14
|
+
readonly label: string;
|
|
15
|
+
readonly ok: boolean;
|
|
16
|
+
readonly detail: string;
|
|
17
|
+
}
|
|
18
|
+
/** 初始化状态的全部事实(状态页与出口载荷都读这一件)。 */
|
|
19
|
+
export interface SetupStatus {
|
|
20
|
+
readonly dbPath: string;
|
|
21
|
+
/** 库文件在不在(老侧第一重:数据存在)。 */
|
|
22
|
+
readonly dbExists: boolean;
|
|
23
|
+
/** `bills` 表在不在(表不在=这个位置还不是一个记账库)。 */
|
|
24
|
+
readonly tableExists: boolean;
|
|
25
|
+
/** 表里的列名(结构版本的判据)。 */
|
|
26
|
+
readonly columns: readonly string[];
|
|
27
|
+
/** 库里有几条记录(含软删;0 是真实读数,照实写 0)。 */
|
|
28
|
+
readonly rows: number;
|
|
29
|
+
/** 结构版本:`v2.0`=十列齐(含 `deleted_at`)、`v1.0`=缺那一列、`—`=表还没建。 */
|
|
30
|
+
readonly version: string;
|
|
31
|
+
/** 三重全过=可以开始记账。 */
|
|
32
|
+
readonly ready: boolean;
|
|
33
|
+
readonly checks: readonly StatusCheck[];
|
|
34
|
+
/** 本次打开库时自动补的东西(空数组=结构本来就是齐的)。 */
|
|
35
|
+
readonly repaired: readonly string[];
|
|
36
|
+
/** 结构仍不是 v2.0(`deleted_at` 缺着)=需要迁移。 */
|
|
37
|
+
readonly needsMigration: boolean;
|
|
38
|
+
/** 表在但一条记录都没有(空库两态里的「库里没数据」,与「窗口为空」不是一件事)。 */
|
|
39
|
+
readonly emptyLibrary: boolean;
|
|
40
|
+
}
|
|
41
|
+
/** v2.0 的判据列(老侧 `bills` 十列里唯一区分两代结构的那一列)。 */
|
|
42
|
+
export declare const V2_MARKER_COLUMN = "deleted_at";
|
|
43
|
+
/** `bills` 十列(v2.0 的全集;缺哪一列就在状态页上点名)。 */
|
|
44
|
+
export declare const BILLS_COLUMNS: readonly string[];
|
|
45
|
+
/** 读一次初始化状态(只读:不建目录、不写文件、不改结构——结构自愈发生在开库那一步,本件只报)。 */
|
|
46
|
+
export declare function readSetupStatus(db: BillDb): SetupStatus;
|
|
47
|
+
//# sourceMappingURL=status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/setup/status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,uBAAuB;AACvB,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,iCAAiC;AACjC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,sCAAsC;IACtC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,sBAAsB;IACtB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,mBAAmB;IACnB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,wCAAwC;IACxC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,8CAA8C;IAC9C,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC;AAED,6CAA6C;AAC7C,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAE7C,yCAAyC;AACzC,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAE1C,CAAC;AAgBF,sDAAsD;AACtD,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,CAyCvD"}
|