skill-home 0.3.1 → 0.3.13
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 +96 -52
- package/dist/cli/cmd_read.js +59 -778
- package/dist/cli/cmd_read.js.map +1 -1
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +11 -1
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/keys.d.ts +4 -0
- package/dist/cli/keys.d.ts.map +1 -0
- package/dist/cli/keys.js +51 -0
- package/dist/cli/keys.js.map +1 -0
- package/dist/cli/registry.d.ts +4 -0
- package/dist/cli/registry.d.ts.map +1 -0
- package/dist/cli/registry.js +30 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +14 -7
- package/dist/config.js.map +1 -1
- package/dist/express/commands.d.ts +3 -0
- package/dist/express/commands.d.ts.map +1 -0
- package/dist/express/commands.js +6 -0
- package/dist/express/commands.js.map +1 -0
- package/dist/express/index.d.ts +3 -0
- package/dist/express/index.d.ts.map +1 -0
- package/dist/express/index.js +4 -0
- package/dist/express/index.js.map +1 -0
- package/dist/express/pages/express.d.ts +24 -0
- package/dist/express/pages/express.d.ts.map +1 -0
- package/dist/express/pages/express.js +160 -0
- package/dist/express/pages/express.js.map +1 -0
- package/dist/express/pages/list.d.ts +24 -0
- package/dist/express/pages/list.d.ts.map +1 -0
- package/dist/express/pages/list.js +167 -0
- package/dist/express/pages/list.js.map +1 -0
- package/dist/express/pages/missing.d.ts +24 -0
- package/dist/express/pages/missing.d.ts.map +1 -0
- package/dist/express/pages/missing.js +146 -0
- package/dist/express/pages/missing.js.map +1 -0
- package/dist/express/pages/stock.d.ts +24 -0
- package/dist/express/pages/stock.d.ts.map +1 -0
- package/dist/express/pages/stock.js +176 -0
- package/dist/express/pages/stock.js.map +1 -0
- package/dist/express/routes.d.ts +3 -0
- package/dist/express/routes.d.ts.map +1 -0
- package/dist/express/routes.js +8 -0
- package/dist/express/routes.js.map +1 -0
- package/dist/express/shopping.d.ts +4 -0
- package/dist/express/shopping.d.ts.map +1 -0
- package/dist/express/shopping.js +143 -0
- package/dist/express/shopping.js.map +1 -0
- package/dist/family/care.d.ts +4 -0
- package/dist/family/care.d.ts.map +1 -0
- package/dist/family/care.js +103 -0
- package/dist/family/care.js.map +1 -0
- package/dist/family/commands.d.ts +3 -0
- package/dist/family/commands.d.ts.map +1 -0
- package/dist/family/commands.js +6 -0
- package/dist/family/commands.js.map +1 -0
- package/dist/family/index.d.ts +3 -0
- package/dist/family/index.d.ts.map +1 -0
- package/dist/family/index.js +4 -0
- package/dist/family/index.js.map +1 -0
- package/dist/family/pages/family_borrow.d.ts +24 -0
- package/dist/family/pages/family_borrow.d.ts.map +1 -0
- package/dist/family/pages/family_borrow.js +267 -0
- package/dist/family/pages/family_borrow.js.map +1 -0
- package/dist/family/pages/family_members.d.ts +24 -0
- package/dist/family/pages/family_members.d.ts.map +1 -0
- package/dist/family/pages/family_members.js +171 -0
- package/dist/family/pages/family_members.js.map +1 -0
- package/dist/family/routes.d.ts +3 -0
- package/dist/family/routes.d.ts.map +1 -0
- package/dist/family/routes.js +20 -0
- package/dist/family/routes.js.map +1 -0
- package/dist/fetch/db.d.ts.map +1 -1
- package/dist/fetch/db.js +9 -1
- package/dist/fetch/db.js.map +1 -1
- package/dist/fetch/domains.d.ts +92 -0
- package/dist/fetch/domains.d.ts.map +1 -1
- package/dist/fetch/domains.js +165 -26
- package/dist/fetch/domains.js.map +1 -1
- package/dist/fetch/index.d.ts +2 -1
- package/dist/fetch/index.d.ts.map +1 -1
- package/dist/fetch/index.js +6 -1
- package/dist/fetch/index.js.map +1 -1
- package/dist/health.d.ts +9 -0
- package/dist/health.d.ts.map +1 -1
- package/dist/health.js +19 -0
- package/dist/health.js.map +1 -1
- package/dist/help/helpAssets.js +1 -1
- package/dist/items/add.d.ts +3 -0
- package/dist/items/add.d.ts.map +1 -0
- package/dist/items/add.js +34 -0
- package/dist/items/add.js.map +1 -0
- package/dist/items/commands.d.ts +3 -0
- package/dist/items/commands.d.ts.map +1 -0
- package/dist/items/commands.js +22 -0
- package/dist/items/commands.js.map +1 -0
- package/dist/items/detail.d.ts +3 -0
- package/dist/items/detail.d.ts.map +1 -0
- package/dist/items/detail.js +31 -0
- package/dist/items/detail.js.map +1 -0
- package/dist/items/index.d.ts +3 -0
- package/dist/items/index.d.ts.map +1 -0
- package/dist/items/index.js +4 -0
- package/dist/items/index.js.map +1 -0
- package/dist/items/inventory.d.ts +4 -0
- package/dist/items/inventory.d.ts.map +1 -0
- package/dist/items/inventory.js +41 -0
- package/dist/items/inventory.js.map +1 -0
- package/dist/items/pages/add_form.d.ts +24 -0
- package/dist/items/pages/add_form.d.ts.map +1 -0
- package/dist/items/pages/add_form.js +174 -0
- package/dist/items/pages/add_form.js.map +1 -0
- package/dist/items/pages/browse.d.ts +24 -0
- package/dist/items/pages/browse.d.ts.map +1 -0
- package/dist/items/pages/browse.js +143 -0
- package/dist/items/pages/browse.js.map +1 -0
- package/dist/items/pages/category_manage.d.ts +24 -0
- package/dist/items/pages/category_manage.d.ts.map +1 -0
- package/dist/items/pages/category_manage.js +153 -0
- package/dist/items/pages/category_manage.js.map +1 -0
- package/dist/items/pages/confirm.d.ts +24 -0
- package/dist/items/pages/confirm.d.ts.map +1 -0
- package/dist/items/pages/confirm.js +149 -0
- package/dist/items/pages/confirm.js.map +1 -0
- package/dist/items/pages/detail.d.ts +24 -0
- package/dist/items/pages/detail.d.ts.map +1 -0
- package/dist/items/pages/detail.js +160 -0
- package/dist/items/pages/detail.js.map +1 -0
- package/dist/items/pages/duplicates.d.ts +24 -0
- package/dist/items/pages/duplicates.d.ts.map +1 -0
- package/dist/items/pages/duplicates.js +138 -0
- package/dist/items/pages/duplicates.js.map +1 -0
- package/dist/items/pages/history.d.ts +24 -0
- package/dist/items/pages/history.d.ts.map +1 -0
- package/dist/items/pages/history.js +213 -0
- package/dist/items/pages/history.js.map +1 -0
- package/dist/items/pages/inventory_diff.d.ts +24 -0
- package/dist/items/pages/inventory_diff.d.ts.map +1 -0
- package/dist/items/pages/inventory_diff.js +126 -0
- package/dist/items/pages/inventory_diff.js.map +1 -0
- package/dist/items/pages/inventory_records.d.ts +24 -0
- package/dist/items/pages/inventory_records.d.ts.map +1 -0
- package/dist/items/pages/inventory_records.js +147 -0
- package/dist/items/pages/inventory_records.js.map +1 -0
- package/dist/items/pages/inventory_round.d.ts +24 -0
- package/dist/items/pages/inventory_round.d.ts.map +1 -0
- package/dist/items/pages/inventory_round.js +145 -0
- package/dist/items/pages/inventory_round.js.map +1 -0
- package/dist/items/pages/locate.d.ts +24 -0
- package/dist/items/pages/locate.d.ts.map +1 -0
- package/dist/items/pages/locate.js +129 -0
- package/dist/items/pages/locate.js.map +1 -0
- package/dist/items/pages/move_checklist.d.ts +24 -0
- package/dist/items/pages/move_checklist.d.ts.map +1 -0
- package/dist/items/pages/move_checklist.js +112 -0
- package/dist/items/pages/move_checklist.js.map +1 -0
- package/dist/items/pages/photo_wall.d.ts +24 -0
- package/dist/items/pages/photo_wall.d.ts.map +1 -0
- package/dist/items/pages/photo_wall.js +145 -0
- package/dist/items/pages/photo_wall.js.map +1 -0
- package/dist/items/pages/photos.d.ts +24 -0
- package/dist/items/pages/photos.d.ts.map +1 -0
- package/dist/items/pages/photos.js +182 -0
- package/dist/items/pages/photos.js.map +1 -0
- package/dist/items/pages/receipt.d.ts +24 -0
- package/dist/items/pages/receipt.d.ts.map +1 -0
- package/dist/items/pages/receipt.js +252 -0
- package/dist/items/pages/receipt.js.map +1 -0
- package/dist/items/pages/relations.d.ts +24 -0
- package/dist/items/pages/relations.d.ts.map +1 -0
- package/dist/items/pages/relations.js +144 -0
- package/dist/items/pages/relations.js.map +1 -0
- package/dist/items/pages/search_list.d.ts +24 -0
- package/dist/items/pages/search_list.d.ts.map +1 -0
- package/dist/items/pages/search_list.js +133 -0
- package/dist/items/pages/search_list.js.map +1 -0
- package/dist/items/pages/tag_manage.d.ts +24 -0
- package/dist/items/pages/tag_manage.d.ts.map +1 -0
- package/dist/items/pages/tag_manage.js +213 -0
- package/dist/items/pages/tag_manage.js.map +1 -0
- package/dist/items/pages/undo_select.d.ts +24 -0
- package/dist/items/pages/undo_select.d.ts.map +1 -0
- package/dist/items/pages/undo_select.js +143 -0
- package/dist/items/pages/undo_select.js.map +1 -0
- package/dist/items/routes.d.ts +3 -0
- package/dist/items/routes.d.ts.map +1 -0
- package/dist/items/routes.js +62 -0
- package/dist/items/routes.js.map +1 -0
- package/dist/items/search.d.ts +3 -0
- package/dist/items/search.d.ts.map +1 -0
- package/dist/items/search.js +47 -0
- package/dist/items/search.js.map +1 -0
- package/dist/items/tag.d.ts +25 -0
- package/dist/items/tag.d.ts.map +1 -0
- package/dist/items/tag.js +133 -0
- package/dist/items/tag.js.map +1 -0
- package/dist/items/update.d.ts +20 -0
- package/dist/items/update.d.ts.map +1 -0
- package/dist/items/update.js +211 -0
- package/dist/items/update.js.map +1 -0
- package/dist/outfit/commands.d.ts +3 -0
- package/dist/outfit/commands.d.ts.map +1 -0
- package/dist/outfit/commands.js +7 -0
- package/dist/outfit/commands.js.map +1 -0
- package/dist/outfit/index.d.ts +3 -0
- package/dist/outfit/index.d.ts.map +1 -0
- package/dist/outfit/index.js +4 -0
- package/dist/outfit/index.js.map +1 -0
- package/dist/outfit/outfit.d.ts +3 -0
- package/dist/outfit/outfit.d.ts.map +1 -0
- package/dist/outfit/outfit.js +182 -0
- package/dist/outfit/outfit.js.map +1 -0
- package/dist/outfit/pages/outfit_picker.d.ts +24 -0
- package/dist/outfit/pages/outfit_picker.d.ts.map +1 -0
- package/dist/outfit/pages/outfit_picker.js +185 -0
- package/dist/outfit/pages/outfit_picker.js.map +1 -0
- package/dist/outfit/pages/travel_trip.d.ts +24 -0
- package/dist/outfit/pages/travel_trip.d.ts.map +1 -0
- package/dist/outfit/pages/travel_trip.js +185 -0
- package/dist/outfit/pages/travel_trip.js.map +1 -0
- package/dist/outfit/pages/trip_outfit_plan.d.ts +24 -0
- package/dist/outfit/pages/trip_outfit_plan.d.ts.map +1 -0
- package/dist/outfit/pages/trip_outfit_plan.js +173 -0
- package/dist/outfit/pages/trip_outfit_plan.js.map +1 -0
- package/dist/outfit/pages/wardrobe_analyze.d.ts +24 -0
- package/dist/outfit/pages/wardrobe_analyze.d.ts.map +1 -0
- package/dist/outfit/pages/wardrobe_analyze.js +171 -0
- package/dist/outfit/pages/wardrobe_analyze.js.map +1 -0
- package/dist/outfit/pages/wardrobe_season.d.ts +24 -0
- package/dist/outfit/pages/wardrobe_season.d.ts.map +1 -0
- package/dist/outfit/pages/wardrobe_season.js +167 -0
- package/dist/outfit/pages/wardrobe_season.js.map +1 -0
- package/dist/outfit/routes.d.ts +3 -0
- package/dist/outfit/routes.d.ts.map +1 -0
- package/dist/outfit/routes.js +9 -0
- package/dist/outfit/routes.js.map +1 -0
- package/dist/outfit/trip.d.ts +3 -0
- package/dist/outfit/trip.d.ts.map +1 -0
- package/dist/outfit/trip.js +59 -0
- package/dist/outfit/trip.js.map +1 -0
- package/dist/output.d.ts +13 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +57 -0
- package/dist/output.js.map +1 -0
- package/dist/policy/routes.generated.d.ts +3 -0
- package/dist/policy/routes.generated.d.ts.map +1 -0
- package/dist/policy/routes.generated.js +128 -0
- package/dist/policy/routes.generated.js.map +1 -0
- package/dist/policy/wakewords.d.ts +1 -0
- package/dist/policy/wakewords.d.ts.map +1 -1
- package/dist/policy/wakewords.js +11 -93
- package/dist/policy/wakewords.js.map +1 -1
- package/dist/receipt/commands.d.ts +3 -0
- package/dist/receipt/commands.d.ts.map +1 -0
- package/dist/receipt/commands.js +6 -0
- package/dist/receipt/commands.js.map +1 -0
- package/dist/receipt/index.d.ts +3 -0
- package/dist/receipt/index.d.ts.map +1 -0
- package/dist/receipt/index.js +4 -0
- package/dist/receipt/index.js.map +1 -0
- package/dist/receipt/pages/accounts.d.ts +24 -0
- package/dist/receipt/pages/accounts.d.ts.map +1 -0
- package/dist/receipt/pages/accounts.js +217 -0
- package/dist/receipt/pages/accounts.js.map +1 -0
- package/dist/receipt/pages/certificates.d.ts +24 -0
- package/dist/receipt/pages/certificates.d.ts.map +1 -0
- package/dist/receipt/pages/certificates.js +231 -0
- package/dist/receipt/pages/certificates.js.map +1 -0
- package/dist/receipt/pages/purchase_records.d.ts +24 -0
- package/dist/receipt/pages/purchase_records.d.ts.map +1 -0
- package/dist/receipt/pages/purchase_records.js +267 -0
- package/dist/receipt/pages/purchase_records.js.map +1 -0
- package/dist/receipt/pages/warranty.d.ts +24 -0
- package/dist/receipt/pages/warranty.d.ts.map +1 -0
- package/dist/receipt/pages/warranty.js +142 -0
- package/dist/receipt/pages/warranty.js.map +1 -0
- package/dist/receipt/routes.d.ts +3 -0
- package/dist/receipt/routes.d.ts.map +1 -0
- package/dist/receipt/routes.js +21 -0
- package/dist/receipt/routes.js.map +1 -0
- package/dist/receipt/ticket.d.ts +4 -0
- package/dist/receipt/ticket.d.ts.map +1 -0
- package/dist/receipt/ticket.js +282 -0
- package/dist/receipt/ticket.js.map +1 -0
- package/dist/render/copyArea.d.ts +45 -0
- package/dist/render/copyArea.d.ts.map +1 -0
- package/dist/render/copyArea.js +74 -0
- package/dist/render/copyArea.js.map +1 -0
- package/dist/render/envelope.d.ts.map +1 -1
- package/dist/render/envelope.js +4 -23
- package/dist/render/envelope.js.map +1 -1
- package/dist/render/errors.d.ts +1 -1
- package/dist/render/errors.d.ts.map +1 -1
- package/dist/render/errors.js.map +1 -1
- package/dist/render/familyPage.d.ts +20 -0
- package/dist/render/familyPage.d.ts.map +1 -0
- package/dist/render/familyPage.js +106 -0
- package/dist/render/familyPage.js.map +1 -0
- package/dist/render/html.d.ts +7 -2
- package/dist/render/html.d.ts.map +1 -1
- package/dist/render/html.js +78 -6
- package/dist/render/html.js.map +1 -1
- package/dist/render/index.d.ts +8 -2
- package/dist/render/index.d.ts.map +1 -1
- package/dist/render/index.js +9 -2
- package/dist/render/index.js.map +1 -1
- package/dist/render/pageFamilies.d.ts +8 -0
- package/dist/render/pageFamilies.d.ts.map +1 -0
- package/dist/render/pageFamilies.js +169 -0
- package/dist/render/pageFamilies.js.map +1 -0
- package/dist/render/sceneNaming.d.ts +14 -0
- package/dist/render/sceneNaming.d.ts.map +1 -0
- package/dist/render/sceneNaming.js +173 -0
- package/dist/render/sceneNaming.js.map +1 -0
- package/dist/render/views.d.ts +34 -2
- package/dist/render/views.d.ts.map +1 -1
- package/dist/render/views.js +28 -4
- package/dist/render/views.js.map +1 -1
- package/dist/setup/commands.d.ts +3 -0
- package/dist/setup/commands.d.ts.map +1 -0
- package/dist/setup/commands.js +9 -0
- package/dist/setup/commands.js.map +1 -0
- package/dist/setup/index.d.ts +3 -0
- package/dist/setup/index.d.ts.map +1 -0
- package/dist/setup/index.js +4 -0
- package/dist/setup/index.js.map +1 -0
- package/dist/setup/pages/backup_receipt.d.ts +24 -0
- package/dist/setup/pages/backup_receipt.d.ts.map +1 -0
- package/dist/setup/pages/backup_receipt.js +198 -0
- package/dist/setup/pages/backup_receipt.js.map +1 -0
- package/dist/setup/pages/first_use_wizard.d.ts +24 -0
- package/dist/setup/pages/first_use_wizard.d.ts.map +1 -0
- package/dist/setup/pages/first_use_wizard.js +169 -0
- package/dist/setup/pages/first_use_wizard.js.map +1 -0
- package/dist/setup/pages/health_report.d.ts +24 -0
- package/dist/setup/pages/health_report.d.ts.map +1 -0
- package/dist/setup/pages/health_report.js +152 -0
- package/dist/setup/pages/health_report.js.map +1 -0
- package/dist/setup/pages/import_restore.d.ts +24 -0
- package/dist/setup/pages/import_restore.d.ts.map +1 -0
- package/dist/setup/pages/import_restore.js +179 -0
- package/dist/setup/pages/import_restore.js.map +1 -0
- package/dist/setup/routes.d.ts +3 -0
- package/dist/setup/routes.d.ts.map +1 -0
- package/dist/setup/routes.js +2 -0
- package/dist/setup/routes.js.map +1 -0
- package/dist/shared/commandSpec.d.ts +30 -0
- package/dist/shared/commandSpec.d.ts.map +1 -0
- package/dist/shared/commandSpec.js +8 -0
- package/dist/shared/commandSpec.js.map +1 -0
- package/dist/shared/fail.d.ts +4 -0
- package/dist/shared/fail.d.ts.map +1 -0
- package/dist/shared/fail.js +16 -0
- package/dist/shared/fail.js.map +1 -0
- package/dist/shared/params.d.ts +2 -0
- package/dist/shared/params.d.ts.map +1 -0
- package/dist/shared/params.js +12 -0
- package/dist/shared/params.js.map +1 -0
- package/dist/space/commands.d.ts +3 -0
- package/dist/space/commands.d.ts.map +1 -0
- package/dist/space/commands.js +6 -0
- package/dist/space/commands.js.map +1 -0
- package/dist/space/index.d.ts +3 -0
- package/dist/space/index.d.ts.map +1 -0
- package/dist/space/index.js +4 -0
- package/dist/space/index.js.map +1 -0
- package/dist/space/location.d.ts +82 -0
- package/dist/space/location.d.ts.map +1 -0
- package/dist/space/location.js +310 -0
- package/dist/space/location.js.map +1 -0
- package/dist/space/pages/fixed_spot.d.ts +24 -0
- package/dist/space/pages/fixed_spot.d.ts.map +1 -0
- package/dist/space/pages/fixed_spot.js +122 -0
- package/dist/space/pages/fixed_spot.js.map +1 -0
- package/dist/space/pages/location_manage.d.ts +24 -0
- package/dist/space/pages/location_manage.d.ts.map +1 -0
- package/dist/space/pages/location_manage.js +169 -0
- package/dist/space/pages/location_manage.js.map +1 -0
- package/dist/space/pages/space_view.d.ts +24 -0
- package/dist/space/pages/space_view.d.ts.map +1 -0
- package/dist/space/pages/space_view.js +185 -0
- package/dist/space/pages/space_view.js.map +1 -0
- package/dist/space/pages/suggest_storage.d.ts +24 -0
- package/dist/space/pages/suggest_storage.d.ts.map +1 -0
- package/dist/space/pages/suggest_storage.js +179 -0
- package/dist/space/pages/suggest_storage.js.map +1 -0
- package/dist/space/routes.d.ts +3 -0
- package/dist/space/routes.d.ts.map +1 -0
- package/dist/space/routes.js +24 -0
- package/dist/space/routes.js.map +1 -0
- package/dist/stats/commands.d.ts +3 -0
- package/dist/stats/commands.d.ts.map +1 -0
- package/dist/stats/commands.js +6 -0
- package/dist/stats/commands.js.map +1 -0
- package/dist/stats/index.d.ts +3 -0
- package/dist/stats/index.d.ts.map +1 -0
- package/dist/stats/index.js +4 -0
- package/dist/stats/index.js.map +1 -0
- package/dist/stats/pages/expiring.d.ts +24 -0
- package/dist/stats/pages/expiring.d.ts.map +1 -0
- package/dist/stats/pages/expiring.js +220 -0
- package/dist/stats/pages/expiring.js.map +1 -0
- package/dist/stats/pages/idle.d.ts +24 -0
- package/dist/stats/pages/idle.d.ts.map +1 -0
- package/dist/stats/pages/idle.js +181 -0
- package/dist/stats/pages/idle.js.map +1 -0
- package/dist/stats/pages/inventory_stat.d.ts +24 -0
- package/dist/stats/pages/inventory_stat.d.ts.map +1 -0
- package/dist/stats/pages/inventory_stat.js +165 -0
- package/dist/stats/pages/inventory_stat.js.map +1 -0
- package/dist/stats/pages/overview.d.ts +24 -0
- package/dist/stats/pages/overview.d.ts.map +1 -0
- package/dist/stats/pages/overview.js +238 -0
- package/dist/stats/pages/overview.js.map +1 -0
- package/dist/stats/routes.d.ts +3 -0
- package/dist/stats/routes.d.ts.map +1 -0
- package/dist/stats/routes.js +16 -0
- package/dist/stats/routes.js.map +1 -0
- package/dist/stats/stats.d.ts +4 -0
- package/dist/stats/stats.d.ts.map +1 -0
- package/dist/stats/stats.js +73 -0
- package/dist/stats/stats.js.map +1 -0
- package/package.json +8 -5
- package/templates/care_query.html +1 -0
- package/templates/care_receipt.html +1 -0
- package/templates/express/express.html +17 -0
- package/templates/express/list.html +17 -0
- package/templates/express/missing.html +17 -0
- package/templates/express/stock.html +17 -0
- package/templates/family/family_borrow.html +17 -0
- package/templates/family/family_members.html +17 -0
- package/templates/help.html +1 -0
- package/templates/inventory_records.html +1 -0
- package/templates/inventory_round.html +1 -0
- package/templates/item_detail.html +1 -0
- package/templates/item_receipt.html +1 -0
- package/templates/item_search.html +1 -0
- package/templates/item_update_receipt.html +1 -0
- package/templates/items/add_form.html +17 -0
- package/templates/items/browse.html +17 -0
- package/templates/items/category_manage.html +17 -0
- package/templates/items/confirm.html +17 -0
- package/templates/items/detail.html +17 -0
- package/templates/items/duplicates.html +17 -0
- package/templates/items/history.html +17 -0
- package/templates/items/inventory_diff.html +17 -0
- package/templates/items/inventory_records.html +17 -0
- package/templates/items/inventory_round.html +17 -0
- package/templates/items/locate.html +17 -0
- package/templates/items/move_checklist.html +17 -0
- package/templates/items/photo_wall.html +17 -0
- package/templates/items/photos.html +17 -0
- package/templates/items/receipt.html +17 -0
- package/templates/items/relations.html +17 -0
- package/templates/items/search_list.html +17 -0
- package/templates/items/tag_manage.html +17 -0
- package/templates/items/undo_select.html +17 -0
- package/templates/location_query.html +1 -0
- package/templates/location_receipt.html +1 -0
- package/templates/outfit/outfit_picker.html +17 -0
- package/templates/outfit/travel_trip.html +17 -0
- package/templates/outfit/trip_outfit_plan.html +17 -0
- package/templates/outfit/wardrobe_analyze.html +17 -0
- package/templates/outfit/wardrobe_season.html +17 -0
- package/templates/outfit_pick.html +1 -0
- package/templates/receipt/accounts.html +17 -0
- package/templates/receipt/certificates.html +17 -0
- package/templates/receipt/purchase_records.html +17 -0
- package/templates/receipt/warranty.html +17 -0
- package/templates/setup/backup_receipt.html +17 -0
- package/templates/setup/first_use_wizard.html +17 -0
- package/templates/setup/health_report.html +17 -0
- package/templates/setup/import_restore.html +17 -0
- package/templates/shopping_query.html +1 -0
- package/templates/shopping_receipt.html +1 -0
- package/templates/space/fixed_spot.html +63 -0
- package/templates/space/location_manage.html +70 -0
- package/templates/space/space_view.html +65 -0
- package/templates/space/suggest_storage.html +58 -0
- package/templates/stats/expiring.html +17 -0
- package/templates/stats/idle.html +17 -0
- package/templates/stats/inventory_stat.html +17 -0
- package/templates/stats/overview.html +17 -0
- package/templates/stats_alert.html +1 -0
- package/templates/stats_overview.html +1 -0
- package/templates/tag_query.html +1 -0
- package/templates/tag_receipt.html +1 -0
- package/templates/ticket_query.html +1 -0
- package/templates/ticket_receipt.html +1 -0
- package/templates/trip_receipt.html +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health_report.js","sourceRoot":"","sources":["../../../src/setup/pages/health_report.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { Envelope } from 'base-link-core';
|
|
2
|
+
export declare const FAMILY: "import_restore";
|
|
3
|
+
export declare const PAGE_META: {
|
|
4
|
+
readonly domain: "setup";
|
|
5
|
+
readonly family: "import_restore";
|
|
6
|
+
readonly key: "home.care.write";
|
|
7
|
+
readonly shape: "receipt";
|
|
8
|
+
readonly preset: Record<string, unknown>;
|
|
9
|
+
readonly rows: readonly {
|
|
10
|
+
readonly key: string;
|
|
11
|
+
readonly preset: Record<string, unknown>;
|
|
12
|
+
}[];
|
|
13
|
+
};
|
|
14
|
+
export declare const REQUIRED_BLOCKS: {
|
|
15
|
+
readonly fields: readonly string[];
|
|
16
|
+
readonly operations: readonly string[];
|
|
17
|
+
readonly empty: readonly string[];
|
|
18
|
+
readonly status: readonly string[];
|
|
19
|
+
};
|
|
20
|
+
export declare function renderFamilyPage(env: Envelope, ctx?: {
|
|
21
|
+
readonly command?: string;
|
|
22
|
+
readonly actionAt?: string;
|
|
23
|
+
}): string;
|
|
24
|
+
//# sourceMappingURL=import_restore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import_restore.d.ts","sourceRoot":"","sources":["../../../src/setup/pages/import_restore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,eAAO,MAAM,MAAM,EAAG,gBAAyB,CAAC;AAEhD,eAAO,MAAM,SAAS;;;;;qBAKS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;mBACY,SAAS;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE;CACrI,CAAC;AAEX,eAAO,MAAM,eAAe,EA2BvB;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;AAyBF,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,CAiHvH"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
// setup能力·import_restore页装配(#816 域票填内容:导入四步冲突处理页,#817 收口补模式值位与承诺语)。
|
|
2
|
+
// 诚实口径:新实现是整库覆盖(恢复前自动自备份),没有逐条同名比对——冲突区如实说明、不虚构名单,偏差记入域对账。
|
|
3
|
+
// 页面承诺语只说一遍(页首不复述);必需块原文=契约附录(事实源),逐条落在 data-need 属性里,三方对账照旧。
|
|
4
|
+
import { readFileSync } from 'node:fs';
|
|
5
|
+
import { fillTemplate, escapeHtml, homeCopyArea, homeCopyLog, homeNowStamp } from '../../render/index.js';
|
|
6
|
+
export const FAMILY = 'import_restore';
|
|
7
|
+
export const PAGE_META = {
|
|
8
|
+
domain: 'setup',
|
|
9
|
+
family: FAMILY,
|
|
10
|
+
key: 'home.care.write',
|
|
11
|
+
shape: 'receipt',
|
|
12
|
+
preset: { "kind": "import" },
|
|
13
|
+
rows: [{ "key": "home.care.write", "preset": { "kind": "import" } }],
|
|
14
|
+
};
|
|
15
|
+
export const REQUIRED_BLOCKS = {
|
|
16
|
+
"empty": [
|
|
17
|
+
"冲突超10条折叠",
|
|
18
|
+
"异常:数据解析失败/数据校验失败/导入失败",
|
|
19
|
+
"承诺语:导入前自动备份+失败回滚"
|
|
20
|
+
],
|
|
21
|
+
"fields": [
|
|
22
|
+
"四步(选择文件/校验结果/冲突预览/确认导入)",
|
|
23
|
+
"校验项",
|
|
24
|
+
"冲突名单",
|
|
25
|
+
"导入结果"
|
|
26
|
+
],
|
|
27
|
+
"operations": [
|
|
28
|
+
"选择文件",
|
|
29
|
+
"冲突处理下拉",
|
|
30
|
+
"确认导入",
|
|
31
|
+
"撤销导入",
|
|
32
|
+
"知道了",
|
|
33
|
+
"复制数据",
|
|
34
|
+
"复制日志"
|
|
35
|
+
],
|
|
36
|
+
"status": [
|
|
37
|
+
"跳过同名",
|
|
38
|
+
"覆盖同名",
|
|
39
|
+
"done",
|
|
40
|
+
"current"
|
|
41
|
+
]
|
|
42
|
+
};
|
|
43
|
+
function msgOf(env) {
|
|
44
|
+
const d = env.data;
|
|
45
|
+
return typeof d.message === 'string' ? d.message : '';
|
|
46
|
+
}
|
|
47
|
+
function numsOf(msg) {
|
|
48
|
+
const m1 = msg.match(/含 (\d+) 件/);
|
|
49
|
+
const m2 = msg.match(/当前库 (\d+) 件/);
|
|
50
|
+
const m3 = msg.match(/(\d+) → (\d+) 件/);
|
|
51
|
+
return {
|
|
52
|
+
backup: m1 ? m1[1] : '—',
|
|
53
|
+
current: m2 ? m2[1] : (m3 ? m3[1] : '—'),
|
|
54
|
+
after: m3 ? m3[2] : '—',
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function safetyOf(msg) {
|
|
58
|
+
const m = msg.match(/恢复前自备份 (\S+?)[)】]/);
|
|
59
|
+
return m ? m[1] : '';
|
|
60
|
+
}
|
|
61
|
+
// 装配入口:真 envelope(真命令链产出)+本族模板 → 同形整页;fail-closed:模板缺失/标记异常即抛,不返空页。
|
|
62
|
+
// 复制区走共用件(envelope 投影,三格式恒开;receipt 形 data={ok,message} 同走 buildDataText);`ctx.command` 由交付链供给,直调缺省按本族主 key。
|
|
63
|
+
export function renderFamilyPage(env, ctx) {
|
|
64
|
+
const template = readFileSync(new URL('../../../templates/setup/import_restore.html', import.meta.url), 'utf8');
|
|
65
|
+
const msg = msgOf(env);
|
|
66
|
+
const isPreview = msg.includes('预告通过');
|
|
67
|
+
const isDone = msg.includes('已从备份恢复');
|
|
68
|
+
const nums = numsOf(msg);
|
|
69
|
+
const safety = safetyOf(msg);
|
|
70
|
+
const stepState = (i) => {
|
|
71
|
+
if (isDone)
|
|
72
|
+
return 'done';
|
|
73
|
+
if (isPreview)
|
|
74
|
+
return i < 2 ? 'done' : i === 2 ? 'current' : 'pending';
|
|
75
|
+
return i === 0 ? 'current' : 'pending';
|
|
76
|
+
};
|
|
77
|
+
const stepLabel = (i) => {
|
|
78
|
+
const s = stepState(i);
|
|
79
|
+
return s === 'done' ? '已完成' : s === 'current' ? '进行中' : '待办';
|
|
80
|
+
};
|
|
81
|
+
const titles = ['选择文件', '校验结果', '冲突处理', '确认导入'];
|
|
82
|
+
const steps = titles.map((t, i) => '<div class="su-step" data-status="'
|
|
83
|
+
+ stepState(i) + '"><b>' + (i + 1) + '</b>' + escapeHtml(t)
|
|
84
|
+
+ '<i>' + stepLabel(i) + '</i></div>').join('');
|
|
85
|
+
const content = '<style>'
|
|
86
|
+
+ '.su-wrap{max-width:960px;margin:0 auto;padding:0 0 24px}'
|
|
87
|
+
+ '.su-hero{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #e3e3e8;border-radius:20px;padding:24px;margin:0 0 16px}'
|
|
88
|
+
+ '.su-eyebrow{color:#007aff;font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:8px}'
|
|
89
|
+
+ '.su-lead{color:#6e6e73;font-size:15px;margin:8px 0 0}'
|
|
90
|
+
+ '.su-sec{background:#fff;border:1px solid #e3e3e8;border-radius:16px;padding:18px;margin:16px 0}'
|
|
91
|
+
+ '.su-steps{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0}'
|
|
92
|
+
+ '.su-step{flex:1;min-width:110px;background:#f2f4f8;border-radius:12px;padding:10px 8px;text-align:center;font-size:13px;color:#6e6e73}'
|
|
93
|
+
+ '.su-step b{display:block;font-size:16px;margin-bottom:2px}'
|
|
94
|
+
+ '.su-step i{display:block;font-style:normal;font-size:12px;margin-top:2px}'
|
|
95
|
+
+ '.su-step[data-status="done"]{background:#e9f8ef;color:#1d7a3f}'
|
|
96
|
+
+ '.su-step[data-status="current"]{background:#f5f8ff;border:1.5px solid #007aff;color:#007aff}'
|
|
97
|
+
+ '.su-tablewrap{overflow-x:auto;max-width:100%}'
|
|
98
|
+
+ '.su-table{width:100%;border-collapse:collapse;font-size:14px}'
|
|
99
|
+
+ '.su-table th,.su-table td{text-align:left;padding:10px 12px;border-bottom:1px solid #eee;vertical-align:top;word-break:break-all}'
|
|
100
|
+
+ '.su-table th{color:#6e6e73;font-weight:600;white-space:nowrap}'
|
|
101
|
+
+ '.su-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}'
|
|
102
|
+
+ '.su-btn{min-height:44px;border:none;border-radius:999px;padding:12px 20px;font-size:15px;font-weight:700;cursor:pointer;background:#007aff;color:#fff}'
|
|
103
|
+
+ '.su-btn.alt{background:#1d1d1f}.su-btn.ghost{background:#fff;color:#007aff;border:1.5px solid #007aff}'
|
|
104
|
+
+ '.su-note{background:#fff8e8;border:1px solid #f0dfae;border-radius:14px;padding:12px 16px;margin:12px 0;font-size:14px;color:#7a5d12}'
|
|
105
|
+
+ '.su-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);opacity:0;background:rgba(28,28,30,.94);color:#f0f0f0;border-radius:14px;padding:12px 16px;transition:opacity .2s;z-index:9999;max-width:min(480px,90vw)}'
|
|
106
|
+
+ '.su-toast.show{opacity:1}'
|
|
107
|
+
+ 'details.su-raw{margin:16px 0;font-size:13px;color:#6e6e73}'
|
|
108
|
+
+ 'details.su-raw summary{min-height:44px;display:flex;align-items:center;cursor:pointer}'
|
|
109
|
+
+ 'details.su-raw pre{white-space:pre-wrap;word-break:break-word;background:#1d1d1f;color:#f5f5f7;border-radius:12px;padding:12px;font-size:12px}'
|
|
110
|
+
+ '@media(max-width:820px){.su-step{min-width:100%}.su-btn{width:100%}}'
|
|
111
|
+
+ '</style>'
|
|
112
|
+
+ '<div class="su-wrap">'
|
|
113
|
+
+ '<div class="su-hero"><div class="su-eyebrow">开始使用</div>'
|
|
114
|
+
+ '<p class="su-lead">先选文件看预告,确认后再真正导入。</p></div>'
|
|
115
|
+
+ '<section class="su-sec" data-block="fields">'
|
|
116
|
+
+ '<h2 data-need="四步(选择文件/校验结果/冲突预览/确认导入)">四个步骤</h2>'
|
|
117
|
+
+ '<div class="su-steps" data-need="done" data-extra="current">' + steps + '</div>'
|
|
118
|
+
+ '<h2 data-need="校验项">校验结果</h2>'
|
|
119
|
+
+ '<div class="su-tablewrap"><table class="su-table">'
|
|
120
|
+
+ '<tr><th>备份中物品</th><td>' + (nums.backup === '—' ? '—' : escapeHtml(nums.backup) + ' 件') + '</td></tr>'
|
|
121
|
+
+ '<tr><th>当前库物品</th><td>' + (nums.current === '—' ? '—' : escapeHtml(nums.current) + ' 件') + '</td></tr>'
|
|
122
|
+
+ (isDone ? '<tr><th>导入后物品</th><td>' + (nums.after === '—' ? '—' : escapeHtml(nums.after) + ' 件') + '</td></tr>' : '')
|
|
123
|
+
+ (safety !== '' ? '<tr><th>恢复前备份</th><td>' + escapeHtml(safety) + '</td></tr>' : '')
|
|
124
|
+
+ '</table></div>'
|
|
125
|
+
+ '<h2 data-need="冲突名单">冲突处理</h2>'
|
|
126
|
+
+ '<div class="su-tablewrap" data-need="冲突处理下拉"><table class="su-table">'
|
|
127
|
+
+ '<tr><th>处理模式</th><th>这一档怎么处理</th></tr>'
|
|
128
|
+
+ '<tr><td data-need="跳过同名">跳过同名</td><td>整库覆盖</td></tr>'
|
|
129
|
+
+ '<tr><td data-need="覆盖同名">覆盖同名</td><td>整库覆盖</td></tr>'
|
|
130
|
+
+ '</table></div>'
|
|
131
|
+
+ '<p class="su-note">恢复不逐条比对同名;兜底是恢复前自动留的那份备份。</p>'
|
|
132
|
+
+ '<p class="su-note" hidden data-need="冲突超10条折叠">只看前十条,其余只报总数。</p>'
|
|
133
|
+
+ '<h2 data-need="导入结果">导入结果</h2>'
|
|
134
|
+
+ (isDone
|
|
135
|
+
? '<p>导入完成,当前库已经是备份里的样子。想反悔就用恢复前那份自动备份恢复回去。</p>'
|
|
136
|
+
: isPreview
|
|
137
|
+
? '<p>预告通过,数字对得上就可以确认导入,确认前库里的数据原样不动。</p>'
|
|
138
|
+
: '<p>还没有选择文件,先走预告看看这份备份里有多少东西,再决定导不导入。</p>')
|
|
139
|
+
+ '</section>'
|
|
140
|
+
+ '<section class="su-sec" data-block="operations">'
|
|
141
|
+
+ '<h2>可以做的操作</h2>'
|
|
142
|
+
+ '<div class="su-actions">'
|
|
143
|
+
+ '<button class="su-btn" data-need="选择文件" data-t="我马上发一份备份文件,请进入等待状态">选择文件</button>'
|
|
144
|
+
// #817(④触控够大·主次可辨):「确认导入」是整库覆盖的破坏性一步,不再与主操作「选择文件」同为实心蓝,
|
|
145
|
+
// 降 ghost;「撤销导入」「知道了」原本就是 ghost,不动。载荷 data-t 与块登记的 data-need 一字不动。
|
|
146
|
+
+ '<button class="su-btn ghost" data-need="确认导入" data-t="请确认导入,恢复前请先自动备份">确认导入</button>'
|
|
147
|
+
+ '<button class="su-btn ghost" data-need="撤销导入" data-t="请用恢复前备份恢复,撤销上次导入">撤销导入</button>'
|
|
148
|
+
+ '<button class="su-btn ghost" data-need="知道了" id="suKnow">知道了</button>'
|
|
149
|
+
+ '</div>'
|
|
150
|
+
+ '<span data-need="复制数据" hidden></span>'
|
|
151
|
+
+ '<span data-need="复制日志" hidden></span>'
|
|
152
|
+
+ homeCopyArea({
|
|
153
|
+
data: { envelope: env },
|
|
154
|
+
log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
|
|
155
|
+
})
|
|
156
|
+
+ '</section>'
|
|
157
|
+
+ '<section class="su-sec" data-block="empty">'
|
|
158
|
+
+ '<h2>这种时候会怎样</h2>'
|
|
159
|
+
+ '<p data-need="承诺语:导入前自动备份+失败回滚">导入前会自动备份现有数据,万一失败会自动回滚,现有数据不会丢。</p>'
|
|
160
|
+
+ '<p data-need="异常:数据解析失败/数据校验失败/导入失败">如果提示解析失败、校验失败或者导入失败,先确认发过去的是备份文件,再走一次预告。</p>'
|
|
161
|
+
+ '</section>'
|
|
162
|
+
+ '<section class="su-sec" data-block="status">'
|
|
163
|
+
+ '<h2>状态说明</h2>'
|
|
164
|
+
+ '<p>步骤状态分三种:已完成,进行中,待办。当前走到哪一步,卡片上看得出来。</p>'
|
|
165
|
+
+ '</section>'
|
|
166
|
+
+ '<details hidden class="su-raw"><summary>原始回执</summary><pre>'
|
|
167
|
+
+ escapeHtml(JSON.stringify(env.data)) + '</pre></details>'
|
|
168
|
+
+ '</div>'
|
|
169
|
+
+ '<div class="su-toast" id="suToast" role="status"></div>'
|
|
170
|
+
+ '<script>'
|
|
171
|
+
+ 'function suToast(t){var el=document.getElementById("suToast");if(!el)return;el.textContent=t;el.classList.add("show");setTimeout(function(){el.classList.remove("show")},3500)}'
|
|
172
|
+
+ 'function suCopy(text,ok){function fb(){try{var ta=document.createElement("textarea");ta.value=text;document.body.appendChild(ta);ta.select();var ok=false;try{ok=document.execCommand("copy")}catch(e){}document.body.removeChild(ta);return ok}catch(e){return false}}'
|
|
173
|
+
+ 'if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(text).then(function(){suToast(ok)}).catch(function(){suToast(fb()?ok:"复制失败,请长按手动复制")})}else{suToast(fb()?ok:"复制失败,请长按手动复制")}}'
|
|
174
|
+
+ 'document.querySelectorAll("[data-t]").forEach(function(b){b.addEventListener("click",function(){suCopy(b.getAttribute("data-t"),"指令已复制,发给助手即可执行")})});'
|
|
175
|
+
+ 'var kd=document.getElementById("suKnow");if(kd)kd.addEventListener("click",function(){suToast("收到")});'
|
|
176
|
+
+ '</script>';
|
|
177
|
+
return fillTemplate(template, content);
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=import_restore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import_restore.js","sourceRoot":"","sources":["../../../src/setup/pages/import_restore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/setup/routes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,eAAO,MAAM,YAAY,EAAE,SAAS,aAAa,EAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/setup/routes.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,YAAY,GAA6B,EAAE,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { HomeDb } from '../fetch/db.js';
|
|
2
|
+
/** 一条命令的事实(住它自己的能力目录 `src/<能力>/commands.ts` 的那一行)。 */
|
|
3
|
+
export interface HomeCommandSpec {
|
|
4
|
+
/** 读/写。写命令的出参形状不写在声明上,一律 receipt(生成器合成)。 */
|
|
5
|
+
readonly kind: 'read' | 'write';
|
|
6
|
+
/** 联动 key,如 `home.item.search`。 */
|
|
7
|
+
readonly key: string;
|
|
8
|
+
/** 读命令的出参形状;写命令不填。 */
|
|
9
|
+
readonly shape?: string;
|
|
10
|
+
/** 用户看到的中文名,如 `查物品`。 */
|
|
11
|
+
readonly title: string;
|
|
12
|
+
/** 代表唤醒词(须是路由表里真能命中本键的词;缺省则速查表退回键名)。 */
|
|
13
|
+
readonly wakeWord?: string;
|
|
14
|
+
/** 照抄即能跑的示例(必填非空)。 */
|
|
15
|
+
readonly example: string;
|
|
16
|
+
/** 处理函数(住同一能力目录的子功能文件)。 */
|
|
17
|
+
readonly run: (params: Record<string, unknown>, handle: HomeDb) => unknown;
|
|
18
|
+
}
|
|
19
|
+
/** 一条路由声明(住它自己的能力目录 `src/<能力>/routes.ts` 的那一行)。 */
|
|
20
|
+
export interface HomeRouteSpec {
|
|
21
|
+
/** 唤醒词原文。 */
|
|
22
|
+
readonly phrase: string;
|
|
23
|
+
/** 命中的联动 key。 */
|
|
24
|
+
readonly key: string;
|
|
25
|
+
/** 缺槽位(路由层即报,不进处理函数才报)。 */
|
|
26
|
+
readonly needs?: readonly string[];
|
|
27
|
+
/** 场景预设(路由带给处理函数的参数,如 `{op:"qty"}`)。 */
|
|
28
|
+
readonly preset?: Readonly<Record<string, string | number | boolean>>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=commandSpec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commandSpec.d.ts","sourceRoot":"","sources":["../../src/shared/commandSpec.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,4CAA4C;IAC5C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,mCAAmC;IACnC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,sBAAsB;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,wBAAwB;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2BAA2B;IAC3B,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;CAC5E;AAED,mDAAmD;AACnD,MAAM,WAAW,aAAa;IAC5B,aAAa;IACb,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,iBAAiB;IACjB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,wCAAwC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CACvE"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// 共用位·命令与路由声明形状(#800 新立)。
|
|
2
|
+
//
|
|
3
|
+
// 形状照抄 `packages/skill-calorie/src/shared/commandSpec.ts`(命令登记纪律:其他件照抄
|
|
4
|
+
// 形状即可),只收居家用到的子集:居家 20 条业务命令的出参形状只有 list/detail/
|
|
5
|
+
// receipt/stat 四形(见 `src/render/envelope.ts` 的出参分配),写命令一律 receipt。
|
|
6
|
+
// 本文件只定形状、不定事实;事实住各能力目录的 `commands.ts`/`routes.ts`。
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=commandSpec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commandSpec.js","sourceRoot":"","sources":["../../src/shared/commandSpec.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,EAAE;AACF,uEAAuE;AACvE,kDAAkD;AAClD,mEAAmE;AACnE,oDAAoD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fail.d.ts","sourceRoot":"","sources":["../../src/shared/fail.ts"],"names":[],"mappings":"AAMA,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAGrD;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEvC;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// 共用位·进程出口:`fail`/`note`/`toast` 的唯一定义地(#800 从 cmd_read 搬出)。
|
|
2
|
+
//
|
|
3
|
+
// 被 8 个能力目录共用(items/space/outfit/stats/express/receipt/family/setup 经
|
|
4
|
+
// 各自 handler 调用参数守卫失败时走这里),故住共用位;本文件不出现任何能力名。
|
|
5
|
+
// 语义冻结:`fail` 打 `ERR <码>:<话>` 到 stderr 并 `process.exit(码)`,与搬迁前逐字一致。
|
|
6
|
+
export function fail(code, msg) {
|
|
7
|
+
console.error('ERR ' + code + ': ' + msg);
|
|
8
|
+
process.exit(code);
|
|
9
|
+
}
|
|
10
|
+
export function toast(msg) {
|
|
11
|
+
console.error('TOAST: ' + msg);
|
|
12
|
+
}
|
|
13
|
+
export function note(msg) {
|
|
14
|
+
console.error('NOTE: ' + msg);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=fail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fail.js","sourceRoot":"","sources":["../../src/shared/fail.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,EAAE;AACF,sEAAsE;AACtE,8CAA8C;AAC9C,qEAAqE;AAErE,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,GAAW;IAC5C,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;IAC1C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,GAAW;IAC/B,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,GAAW;IAC9B,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC;AAChC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/shared/params.ts"],"names":[],"mappings":"AAMA,wBAAgB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAInE"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// 共用位·参数整形:`asInt` 的唯一定义地(#800 从 cmd_read 搬出)。
|
|
2
|
+
//
|
|
3
|
+
// 被 items(合并/关联)/express(阈值)/receipt(证件/账号)等能力共用,故住共用位。
|
|
4
|
+
import { fail } from './fail.js';
|
|
5
|
+
export function asInt(v, field) {
|
|
6
|
+
if (v === undefined)
|
|
7
|
+
return undefined;
|
|
8
|
+
if (!Number.isInteger(v) || v <= 0)
|
|
9
|
+
fail(2, field + ' 须为正整数');
|
|
10
|
+
return v;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/shared/params.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,EAAE;AACF,wDAAwD;AAExD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,UAAU,KAAK,CAAC,CAAU,EAAE,KAAa;IAC7C,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAK,CAAY,IAAI,CAAC;QAAE,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC;IAC1E,OAAO,CAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/space/commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAGhE,eAAO,MAAM,cAAc,EAAE,SAAS,eAAe,EAGpD,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { runLocationQuery, runLocationWrite } from './location.js';
|
|
2
|
+
export const SPACE_COMMANDS = [
|
|
3
|
+
{ kind: 'read', key: 'home.location.query', shape: 'list', title: '管位置', wakeWord: '管位置', example: 'home-cmd-read home.location.query', run: runLocationQuery },
|
|
4
|
+
{ kind: 'write', key: 'home.location.write', title: '管位置', wakeWord: '管位置', example: 'home-cmd-read home.location.write --params \'{"op":"manage","action":"add","path":"客厅/电视柜"}\'', run: runLocationWrite },
|
|
5
|
+
];
|
|
6
|
+
//# sourceMappingURL=commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/space/commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,CAAC,MAAM,cAAc,GAA+B;IACxD,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,mCAAmC,EAAE,GAAG,EAAE,gBAAgB,EAAE;IAC/J,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,+FAA+F,EAAE,GAAG,EAAE,gBAAgB,EAAE;CAC9M,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/space/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/space/index.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { HomeDb } from '../fetch/db.js';
|
|
2
|
+
/** 位置树节点(location_manage 查询面/写入回执共用)。 */
|
|
3
|
+
export interface LocNode {
|
|
4
|
+
kind: 'location_node';
|
|
5
|
+
path: string;
|
|
6
|
+
name: string;
|
|
7
|
+
depth: number;
|
|
8
|
+
count: number;
|
|
9
|
+
empty: boolean;
|
|
10
|
+
}
|
|
11
|
+
/** 相似位置组(flattened 等价:同位置两种写法,建议合并)。 */
|
|
12
|
+
export interface SimilarGroup {
|
|
13
|
+
kind: 'similar_group';
|
|
14
|
+
paths: string[];
|
|
15
|
+
target: string;
|
|
16
|
+
affected: number;
|
|
17
|
+
}
|
|
18
|
+
/** 固定位条目。 */
|
|
19
|
+
export interface FixedEntry {
|
|
20
|
+
id: number;
|
|
21
|
+
name: string;
|
|
22
|
+
fixed: string;
|
|
23
|
+
currents: FixedCur[];
|
|
24
|
+
warn: boolean;
|
|
25
|
+
}
|
|
26
|
+
export interface FixedCur {
|
|
27
|
+
location: string;
|
|
28
|
+
quantity: number;
|
|
29
|
+
status: string;
|
|
30
|
+
}
|
|
31
|
+
/** 单件收纳建议(suggest_storage 一行一件:推荐/保持/暂无依据三态之一有值)。 */
|
|
32
|
+
export interface Recommendation {
|
|
33
|
+
kind: 'recommendation';
|
|
34
|
+
mode: string;
|
|
35
|
+
item: {
|
|
36
|
+
id: number;
|
|
37
|
+
name: string;
|
|
38
|
+
category: string;
|
|
39
|
+
current: string;
|
|
40
|
+
fixed: string;
|
|
41
|
+
};
|
|
42
|
+
recommend: {
|
|
43
|
+
location: string;
|
|
44
|
+
reason: string;
|
|
45
|
+
} | null;
|
|
46
|
+
keep: {
|
|
47
|
+
location: string;
|
|
48
|
+
reason: string;
|
|
49
|
+
} | null;
|
|
50
|
+
alternates: {
|
|
51
|
+
location: string;
|
|
52
|
+
reason: string;
|
|
53
|
+
}[];
|
|
54
|
+
}
|
|
55
|
+
/** 空间视图一层(space_view 一页一层:面包屑+子层+本层物品)。 */
|
|
56
|
+
export interface SpaceView {
|
|
57
|
+
kind: 'space_view';
|
|
58
|
+
path: string;
|
|
59
|
+
name: string;
|
|
60
|
+
crumbs: {
|
|
61
|
+
name: string;
|
|
62
|
+
path: string;
|
|
63
|
+
}[];
|
|
64
|
+
children: {
|
|
65
|
+
name: string;
|
|
66
|
+
path: string;
|
|
67
|
+
count: number;
|
|
68
|
+
kids: boolean;
|
|
69
|
+
empty: boolean;
|
|
70
|
+
}[];
|
|
71
|
+
items: {
|
|
72
|
+
id: number;
|
|
73
|
+
name: string;
|
|
74
|
+
qty: number;
|
|
75
|
+
status: string;
|
|
76
|
+
}[];
|
|
77
|
+
hints: string[];
|
|
78
|
+
total: number;
|
|
79
|
+
}
|
|
80
|
+
export declare function runLocationQuery(params: Record<string, unknown>, handle: HomeDb): unknown;
|
|
81
|
+
export declare function runLocationWrite(params: Record<string, unknown>, handle: HomeDb): unknown;
|
|
82
|
+
//# sourceMappingURL=location.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"location.d.ts","sourceRoot":"","sources":["../../src/space/location.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAU7C,yCAAyC;AACzC,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;CACjG;AACD,wCAAwC;AACxC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;CAC1E;AACD,aAAa;AACb,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;CAC9E;AACD,MAAM,WAAW,QAAQ;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;CAAE;AACjF,qDAAqD;AACrD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IACrC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACrF,SAAS,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvD,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClD,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACpD;AACD,2CAA2C;AAC3C,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAC/C,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IACzF,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;CAChC;AAkND,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAqCzF;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CA8CzF"}
|