skill-home 0.3.34 → 0.3.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (535) hide show
  1. package/package.json +3 -3
  2. package/templates/space/fixed_spot.html +1 -1
  3. package/templates/space/location_manage.html +1 -1
  4. package/dist/cli/cmd_read.d.ts +0 -3
  5. package/dist/cli/cmd_read.d.ts.map +0 -1
  6. package/dist/cli/cmd_read.js +0 -304
  7. package/dist/cli/cmd_read.js.map +0 -1
  8. package/dist/cli/config.d.ts +0 -20
  9. package/dist/cli/config.d.ts.map +0 -1
  10. package/dist/cli/config.js +0 -100
  11. package/dist/cli/config.js.map +0 -1
  12. package/dist/cli/health.d.ts +0 -7
  13. package/dist/cli/health.d.ts.map +0 -1
  14. package/dist/cli/health.js +0 -32
  15. package/dist/cli/health.js.map +0 -1
  16. package/dist/cli/keys.d.ts +0 -4
  17. package/dist/cli/keys.d.ts.map +0 -1
  18. package/dist/cli/keys.js +0 -55
  19. package/dist/cli/keys.js.map +0 -1
  20. package/dist/cli/registry.d.ts +0 -4
  21. package/dist/cli/registry.d.ts.map +0 -1
  22. package/dist/cli/registry.js +0 -32
  23. package/dist/cli/registry.js.map +0 -1
  24. package/dist/config.d.ts +0 -53
  25. package/dist/config.d.ts.map +0 -1
  26. package/dist/config.js +0 -122
  27. package/dist/config.js.map +0 -1
  28. package/dist/data/commands.d.ts +0 -11
  29. package/dist/data/commands.d.ts.map +0 -1
  30. package/dist/data/commands.js +0 -7
  31. package/dist/data/commands.js.map +0 -1
  32. package/dist/data/index.d.ts +0 -3
  33. package/dist/data/index.d.ts.map +0 -1
  34. package/dist/data/index.js +0 -4
  35. package/dist/data/index.js.map +0 -1
  36. package/dist/data/query.d.ts +0 -23
  37. package/dist/data/query.d.ts.map +0 -1
  38. package/dist/data/query.js +0 -19
  39. package/dist/data/query.js.map +0 -1
  40. package/dist/data/routes.d.ts +0 -3
  41. package/dist/data/routes.d.ts.map +0 -1
  42. package/dist/data/routes.js +0 -2
  43. package/dist/data/routes.js.map +0 -1
  44. package/dist/data/schema.d.ts +0 -15
  45. package/dist/data/schema.d.ts.map +0 -1
  46. package/dist/data/schema.js +0 -18
  47. package/dist/data/schema.js.map +0 -1
  48. package/dist/data/tables.d.ts +0 -48
  49. package/dist/data/tables.d.ts.map +0 -1
  50. package/dist/data/tables.js +0 -82
  51. package/dist/data/tables.js.map +0 -1
  52. package/dist/express/commands.d.ts +0 -3
  53. package/dist/express/commands.d.ts.map +0 -1
  54. package/dist/express/commands.js +0 -6
  55. package/dist/express/commands.js.map +0 -1
  56. package/dist/express/index.d.ts +0 -3
  57. package/dist/express/index.d.ts.map +0 -1
  58. package/dist/express/index.js +0 -4
  59. package/dist/express/index.js.map +0 -1
  60. package/dist/express/pages/express.d.ts +0 -24
  61. package/dist/express/pages/express.d.ts.map +0 -1
  62. package/dist/express/pages/express.js +0 -160
  63. package/dist/express/pages/express.js.map +0 -1
  64. package/dist/express/pages/list.d.ts +0 -24
  65. package/dist/express/pages/list.d.ts.map +0 -1
  66. package/dist/express/pages/list.js +0 -167
  67. package/dist/express/pages/list.js.map +0 -1
  68. package/dist/express/pages/missing.d.ts +0 -24
  69. package/dist/express/pages/missing.d.ts.map +0 -1
  70. package/dist/express/pages/missing.js +0 -146
  71. package/dist/express/pages/missing.js.map +0 -1
  72. package/dist/express/pages/stock.d.ts +0 -24
  73. package/dist/express/pages/stock.d.ts.map +0 -1
  74. package/dist/express/pages/stock.js +0 -176
  75. package/dist/express/pages/stock.js.map +0 -1
  76. package/dist/express/routes.d.ts +0 -3
  77. package/dist/express/routes.d.ts.map +0 -1
  78. package/dist/express/routes.js +0 -8
  79. package/dist/express/routes.js.map +0 -1
  80. package/dist/express/shopping.d.ts +0 -4
  81. package/dist/express/shopping.d.ts.map +0 -1
  82. package/dist/express/shopping.js +0 -145
  83. package/dist/express/shopping.js.map +0 -1
  84. package/dist/family/care.d.ts +0 -4
  85. package/dist/family/care.d.ts.map +0 -1
  86. package/dist/family/care.js +0 -103
  87. package/dist/family/care.js.map +0 -1
  88. package/dist/family/commands.d.ts +0 -3
  89. package/dist/family/commands.d.ts.map +0 -1
  90. package/dist/family/commands.js +0 -6
  91. package/dist/family/commands.js.map +0 -1
  92. package/dist/family/index.d.ts +0 -3
  93. package/dist/family/index.d.ts.map +0 -1
  94. package/dist/family/index.js +0 -4
  95. package/dist/family/index.js.map +0 -1
  96. package/dist/family/pages/family_borrow.d.ts +0 -24
  97. package/dist/family/pages/family_borrow.d.ts.map +0 -1
  98. package/dist/family/pages/family_borrow.js +0 -267
  99. package/dist/family/pages/family_borrow.js.map +0 -1
  100. package/dist/family/pages/family_members.d.ts +0 -24
  101. package/dist/family/pages/family_members.d.ts.map +0 -1
  102. package/dist/family/pages/family_members.js +0 -171
  103. package/dist/family/pages/family_members.js.map +0 -1
  104. package/dist/family/routes.d.ts +0 -3
  105. package/dist/family/routes.d.ts.map +0 -1
  106. package/dist/family/routes.js +0 -20
  107. package/dist/family/routes.js.map +0 -1
  108. package/dist/fetch/archive.d.ts +0 -13
  109. package/dist/fetch/archive.d.ts.map +0 -1
  110. package/dist/fetch/archive.js +0 -115
  111. package/dist/fetch/archive.js.map +0 -1
  112. package/dist/fetch/backup.d.ts +0 -75
  113. package/dist/fetch/backup.d.ts.map +0 -1
  114. package/dist/fetch/backup.js +0 -285
  115. package/dist/fetch/backup.js.map +0 -1
  116. package/dist/fetch/db.d.ts +0 -107
  117. package/dist/fetch/db.d.ts.map +0 -1
  118. package/dist/fetch/db.js +0 -443
  119. package/dist/fetch/db.js.map +0 -1
  120. package/dist/fetch/domains.d.ts +0 -151
  121. package/dist/fetch/domains.d.ts.map +0 -1
  122. package/dist/fetch/domains.js +0 -354
  123. package/dist/fetch/domains.js.map +0 -1
  124. package/dist/fetch/errors.d.ts +0 -11
  125. package/dist/fetch/errors.d.ts.map +0 -1
  126. package/dist/fetch/errors.js +0 -18
  127. package/dist/fetch/errors.js.map +0 -1
  128. package/dist/fetch/index.d.ts +0 -11
  129. package/dist/fetch/index.d.ts.map +0 -1
  130. package/dist/fetch/index.js +0 -14
  131. package/dist/fetch/index.js.map +0 -1
  132. package/dist/fetch/masterKey.d.ts +0 -11
  133. package/dist/fetch/masterKey.d.ts.map +0 -1
  134. package/dist/fetch/masterKey.js +0 -46
  135. package/dist/fetch/masterKey.js.map +0 -1
  136. package/dist/fetch/paths.d.ts +0 -55
  137. package/dist/fetch/paths.d.ts.map +0 -1
  138. package/dist/fetch/paths.js +0 -100
  139. package/dist/fetch/paths.js.map +0 -1
  140. package/dist/health.d.ts +0 -50
  141. package/dist/health.d.ts.map +0 -1
  142. package/dist/health.js +0 -524
  143. package/dist/health.js.map +0 -1
  144. package/dist/help/helpAssets.d.ts +0 -52
  145. package/dist/help/helpAssets.d.ts.map +0 -1
  146. package/dist/help/helpAssets.js +0 -2323
  147. package/dist/help/helpAssets.js.map +0 -1
  148. package/dist/help/helpFile.d.ts +0 -62
  149. package/dist/help/helpFile.d.ts.map +0 -1
  150. package/dist/help/helpFile.js +0 -219
  151. package/dist/help/helpFile.js.map +0 -1
  152. package/dist/help/index.d.ts +0 -6
  153. package/dist/help/index.d.ts.map +0 -1
  154. package/dist/help/index.js +0 -8
  155. package/dist/help/index.js.map +0 -1
  156. package/dist/help/lookup.d.ts +0 -11
  157. package/dist/help/lookup.d.ts.map +0 -1
  158. package/dist/help/lookup.js +0 -52
  159. package/dist/help/lookup.js.map +0 -1
  160. package/dist/help/manifest.d.ts +0 -17
  161. package/dist/help/manifest.d.ts.map +0 -1
  162. package/dist/help/manifest.js +0 -44
  163. package/dist/help/manifest.js.map +0 -1
  164. package/dist/help/output.d.ts +0 -12
  165. package/dist/help/output.d.ts.map +0 -1
  166. package/dist/help/output.js +0 -65
  167. package/dist/help/output.js.map +0 -1
  168. package/dist/index.d.ts +0 -5
  169. package/dist/index.d.ts.map +0 -1
  170. package/dist/index.js +0 -6
  171. package/dist/index.js.map +0 -1
  172. package/dist/items/add.d.ts +0 -3
  173. package/dist/items/add.d.ts.map +0 -1
  174. package/dist/items/add.js +0 -34
  175. package/dist/items/add.js.map +0 -1
  176. package/dist/items/commands.d.ts +0 -3
  177. package/dist/items/commands.d.ts.map +0 -1
  178. package/dist/items/commands.js +0 -22
  179. package/dist/items/commands.js.map +0 -1
  180. package/dist/items/detail.d.ts +0 -3
  181. package/dist/items/detail.d.ts.map +0 -1
  182. package/dist/items/detail.js +0 -31
  183. package/dist/items/detail.js.map +0 -1
  184. package/dist/items/index.d.ts +0 -3
  185. package/dist/items/index.d.ts.map +0 -1
  186. package/dist/items/index.js +0 -4
  187. package/dist/items/index.js.map +0 -1
  188. package/dist/items/inventory.d.ts +0 -4
  189. package/dist/items/inventory.d.ts.map +0 -1
  190. package/dist/items/inventory.js +0 -63
  191. package/dist/items/inventory.js.map +0 -1
  192. package/dist/items/pages/add_form.d.ts +0 -24
  193. package/dist/items/pages/add_form.d.ts.map +0 -1
  194. package/dist/items/pages/add_form.js +0 -174
  195. package/dist/items/pages/add_form.js.map +0 -1
  196. package/dist/items/pages/browse.d.ts +0 -24
  197. package/dist/items/pages/browse.d.ts.map +0 -1
  198. package/dist/items/pages/browse.js +0 -143
  199. package/dist/items/pages/browse.js.map +0 -1
  200. package/dist/items/pages/category_manage.d.ts +0 -24
  201. package/dist/items/pages/category_manage.d.ts.map +0 -1
  202. package/dist/items/pages/category_manage.js +0 -153
  203. package/dist/items/pages/category_manage.js.map +0 -1
  204. package/dist/items/pages/confirm.d.ts +0 -24
  205. package/dist/items/pages/confirm.d.ts.map +0 -1
  206. package/dist/items/pages/confirm.js +0 -149
  207. package/dist/items/pages/confirm.js.map +0 -1
  208. package/dist/items/pages/detail.d.ts +0 -24
  209. package/dist/items/pages/detail.d.ts.map +0 -1
  210. package/dist/items/pages/detail.js +0 -160
  211. package/dist/items/pages/detail.js.map +0 -1
  212. package/dist/items/pages/duplicates.d.ts +0 -24
  213. package/dist/items/pages/duplicates.d.ts.map +0 -1
  214. package/dist/items/pages/duplicates.js +0 -138
  215. package/dist/items/pages/duplicates.js.map +0 -1
  216. package/dist/items/pages/history.d.ts +0 -24
  217. package/dist/items/pages/history.d.ts.map +0 -1
  218. package/dist/items/pages/history.js +0 -213
  219. package/dist/items/pages/history.js.map +0 -1
  220. package/dist/items/pages/inventory_diff.d.ts +0 -24
  221. package/dist/items/pages/inventory_diff.d.ts.map +0 -1
  222. package/dist/items/pages/inventory_diff.js +0 -126
  223. package/dist/items/pages/inventory_diff.js.map +0 -1
  224. package/dist/items/pages/inventory_records.d.ts +0 -24
  225. package/dist/items/pages/inventory_records.d.ts.map +0 -1
  226. package/dist/items/pages/inventory_records.js +0 -147
  227. package/dist/items/pages/inventory_records.js.map +0 -1
  228. package/dist/items/pages/inventory_round.d.ts +0 -24
  229. package/dist/items/pages/inventory_round.d.ts.map +0 -1
  230. package/dist/items/pages/inventory_round.js +0 -145
  231. package/dist/items/pages/inventory_round.js.map +0 -1
  232. package/dist/items/pages/locate.d.ts +0 -24
  233. package/dist/items/pages/locate.d.ts.map +0 -1
  234. package/dist/items/pages/locate.js +0 -129
  235. package/dist/items/pages/locate.js.map +0 -1
  236. package/dist/items/pages/move_checklist.d.ts +0 -24
  237. package/dist/items/pages/move_checklist.d.ts.map +0 -1
  238. package/dist/items/pages/move_checklist.js +0 -112
  239. package/dist/items/pages/move_checklist.js.map +0 -1
  240. package/dist/items/pages/photo_wall.d.ts +0 -24
  241. package/dist/items/pages/photo_wall.d.ts.map +0 -1
  242. package/dist/items/pages/photo_wall.js +0 -145
  243. package/dist/items/pages/photo_wall.js.map +0 -1
  244. package/dist/items/pages/photos.d.ts +0 -24
  245. package/dist/items/pages/photos.d.ts.map +0 -1
  246. package/dist/items/pages/photos.js +0 -182
  247. package/dist/items/pages/photos.js.map +0 -1
  248. package/dist/items/pages/receipt.d.ts +0 -24
  249. package/dist/items/pages/receipt.d.ts.map +0 -1
  250. package/dist/items/pages/receipt.js +0 -252
  251. package/dist/items/pages/receipt.js.map +0 -1
  252. package/dist/items/pages/relations.d.ts +0 -24
  253. package/dist/items/pages/relations.d.ts.map +0 -1
  254. package/dist/items/pages/relations.js +0 -144
  255. package/dist/items/pages/relations.js.map +0 -1
  256. package/dist/items/pages/search_list.d.ts +0 -24
  257. package/dist/items/pages/search_list.d.ts.map +0 -1
  258. package/dist/items/pages/search_list.js +0 -133
  259. package/dist/items/pages/search_list.js.map +0 -1
  260. package/dist/items/pages/tag_manage.d.ts +0 -24
  261. package/dist/items/pages/tag_manage.d.ts.map +0 -1
  262. package/dist/items/pages/tag_manage.js +0 -238
  263. package/dist/items/pages/tag_manage.js.map +0 -1
  264. package/dist/items/pages/undo_select.d.ts +0 -24
  265. package/dist/items/pages/undo_select.d.ts.map +0 -1
  266. package/dist/items/pages/undo_select.js +0 -143
  267. package/dist/items/pages/undo_select.js.map +0 -1
  268. package/dist/items/routes.d.ts +0 -3
  269. package/dist/items/routes.d.ts.map +0 -1
  270. package/dist/items/routes.js +0 -62
  271. package/dist/items/routes.js.map +0 -1
  272. package/dist/items/search.d.ts +0 -3
  273. package/dist/items/search.d.ts.map +0 -1
  274. package/dist/items/search.js +0 -47
  275. package/dist/items/search.js.map +0 -1
  276. package/dist/items/tag.d.ts +0 -25
  277. package/dist/items/tag.d.ts.map +0 -1
  278. package/dist/items/tag.js +0 -147
  279. package/dist/items/tag.js.map +0 -1
  280. package/dist/items/update.d.ts +0 -20
  281. package/dist/items/update.d.ts.map +0 -1
  282. package/dist/items/update.js +0 -211
  283. package/dist/items/update.js.map +0 -1
  284. package/dist/outfit/commands.d.ts +0 -3
  285. package/dist/outfit/commands.d.ts.map +0 -1
  286. package/dist/outfit/commands.js +0 -7
  287. package/dist/outfit/commands.js.map +0 -1
  288. package/dist/outfit/index.d.ts +0 -3
  289. package/dist/outfit/index.d.ts.map +0 -1
  290. package/dist/outfit/index.js +0 -4
  291. package/dist/outfit/index.js.map +0 -1
  292. package/dist/outfit/outfit.d.ts +0 -3
  293. package/dist/outfit/outfit.d.ts.map +0 -1
  294. package/dist/outfit/outfit.js +0 -187
  295. package/dist/outfit/outfit.js.map +0 -1
  296. package/dist/outfit/pages/outfit_picker.d.ts +0 -24
  297. package/dist/outfit/pages/outfit_picker.d.ts.map +0 -1
  298. package/dist/outfit/pages/outfit_picker.js +0 -185
  299. package/dist/outfit/pages/outfit_picker.js.map +0 -1
  300. package/dist/outfit/pages/travel_trip.d.ts +0 -24
  301. package/dist/outfit/pages/travel_trip.d.ts.map +0 -1
  302. package/dist/outfit/pages/travel_trip.js +0 -185
  303. package/dist/outfit/pages/travel_trip.js.map +0 -1
  304. package/dist/outfit/pages/trip_outfit_plan.d.ts +0 -24
  305. package/dist/outfit/pages/trip_outfit_plan.d.ts.map +0 -1
  306. package/dist/outfit/pages/trip_outfit_plan.js +0 -173
  307. package/dist/outfit/pages/trip_outfit_plan.js.map +0 -1
  308. package/dist/outfit/pages/wardrobe_analyze.d.ts +0 -24
  309. package/dist/outfit/pages/wardrobe_analyze.d.ts.map +0 -1
  310. package/dist/outfit/pages/wardrobe_analyze.js +0 -171
  311. package/dist/outfit/pages/wardrobe_analyze.js.map +0 -1
  312. package/dist/outfit/pages/wardrobe_season.d.ts +0 -24
  313. package/dist/outfit/pages/wardrobe_season.d.ts.map +0 -1
  314. package/dist/outfit/pages/wardrobe_season.js +0 -167
  315. package/dist/outfit/pages/wardrobe_season.js.map +0 -1
  316. package/dist/outfit/routes.d.ts +0 -3
  317. package/dist/outfit/routes.d.ts.map +0 -1
  318. package/dist/outfit/routes.js +0 -9
  319. package/dist/outfit/routes.js.map +0 -1
  320. package/dist/outfit/trip.d.ts +0 -3
  321. package/dist/outfit/trip.d.ts.map +0 -1
  322. package/dist/outfit/trip.js +0 -59
  323. package/dist/outfit/trip.js.map +0 -1
  324. package/dist/output.d.ts +0 -13
  325. package/dist/output.d.ts.map +0 -1
  326. package/dist/output.js +0 -57
  327. package/dist/output.js.map +0 -1
  328. package/dist/policy/care.d.ts +0 -4
  329. package/dist/policy/care.d.ts.map +0 -1
  330. package/dist/policy/care.js +0 -12
  331. package/dist/policy/care.js.map +0 -1
  332. package/dist/policy/category.d.ts +0 -8
  333. package/dist/policy/category.d.ts.map +0 -1
  334. package/dist/policy/category.js +0 -44
  335. package/dist/policy/category.js.map +0 -1
  336. package/dist/policy/index.d.ts +0 -9
  337. package/dist/policy/index.d.ts.map +0 -1
  338. package/dist/policy/index.js +0 -6
  339. package/dist/policy/index.js.map +0 -1
  340. package/dist/policy/item.d.ts +0 -18
  341. package/dist/policy/item.d.ts.map +0 -1
  342. package/dist/policy/item.js +0 -81
  343. package/dist/policy/item.js.map +0 -1
  344. package/dist/policy/routes.generated.d.ts +0 -3
  345. package/dist/policy/routes.generated.d.ts.map +0 -1
  346. package/dist/policy/routes.generated.js +0 -128
  347. package/dist/policy/routes.generated.js.map +0 -1
  348. package/dist/policy/ticket.d.ts +0 -6
  349. package/dist/policy/ticket.d.ts.map +0 -1
  350. package/dist/policy/ticket.js +0 -25
  351. package/dist/policy/ticket.js.map +0 -1
  352. package/dist/policy/wakewords.d.ts +0 -16
  353. package/dist/policy/wakewords.d.ts.map +0 -1
  354. package/dist/policy/wakewords.js +0 -38
  355. package/dist/policy/wakewords.js.map +0 -1
  356. package/dist/receipt/commands.d.ts +0 -3
  357. package/dist/receipt/commands.d.ts.map +0 -1
  358. package/dist/receipt/commands.js +0 -6
  359. package/dist/receipt/commands.js.map +0 -1
  360. package/dist/receipt/index.d.ts +0 -3
  361. package/dist/receipt/index.d.ts.map +0 -1
  362. package/dist/receipt/index.js +0 -4
  363. package/dist/receipt/index.js.map +0 -1
  364. package/dist/receipt/pages/accounts.d.ts +0 -24
  365. package/dist/receipt/pages/accounts.d.ts.map +0 -1
  366. package/dist/receipt/pages/accounts.js +0 -217
  367. package/dist/receipt/pages/accounts.js.map +0 -1
  368. package/dist/receipt/pages/certificates.d.ts +0 -24
  369. package/dist/receipt/pages/certificates.d.ts.map +0 -1
  370. package/dist/receipt/pages/certificates.js +0 -231
  371. package/dist/receipt/pages/certificates.js.map +0 -1
  372. package/dist/receipt/pages/purchase_records.d.ts +0 -24
  373. package/dist/receipt/pages/purchase_records.d.ts.map +0 -1
  374. package/dist/receipt/pages/purchase_records.js +0 -267
  375. package/dist/receipt/pages/purchase_records.js.map +0 -1
  376. package/dist/receipt/pages/warranty.d.ts +0 -24
  377. package/dist/receipt/pages/warranty.d.ts.map +0 -1
  378. package/dist/receipt/pages/warranty.js +0 -142
  379. package/dist/receipt/pages/warranty.js.map +0 -1
  380. package/dist/receipt/routes.d.ts +0 -3
  381. package/dist/receipt/routes.d.ts.map +0 -1
  382. package/dist/receipt/routes.js +0 -21
  383. package/dist/receipt/routes.js.map +0 -1
  384. package/dist/receipt/ticket.d.ts +0 -4
  385. package/dist/receipt/ticket.d.ts.map +0 -1
  386. package/dist/receipt/ticket.js +0 -282
  387. package/dist/receipt/ticket.js.map +0 -1
  388. package/dist/render/copyArea.d.ts +0 -64
  389. package/dist/render/copyArea.d.ts.map +0 -1
  390. package/dist/render/copyArea.js +0 -196
  391. package/dist/render/copyArea.js.map +0 -1
  392. package/dist/render/envelope.d.ts +0 -6
  393. package/dist/render/envelope.d.ts.map +0 -1
  394. package/dist/render/envelope.js +0 -42
  395. package/dist/render/envelope.js.map +0 -1
  396. package/dist/render/errors.d.ts +0 -5
  397. package/dist/render/errors.d.ts.map +0 -1
  398. package/dist/render/errors.js +0 -10
  399. package/dist/render/errors.js.map +0 -1
  400. package/dist/render/familyPage.d.ts +0 -20
  401. package/dist/render/familyPage.d.ts.map +0 -1
  402. package/dist/render/familyPage.js +0 -106
  403. package/dist/render/familyPage.js.map +0 -1
  404. package/dist/render/html.d.ts +0 -16
  405. package/dist/render/html.d.ts.map +0 -1
  406. package/dist/render/html.js +0 -135
  407. package/dist/render/html.js.map +0 -1
  408. package/dist/render/index.d.ts +0 -14
  409. package/dist/render/index.d.ts.map +0 -1
  410. package/dist/render/index.js +0 -13
  411. package/dist/render/index.js.map +0 -1
  412. package/dist/render/pageFamilies.d.ts +0 -8
  413. package/dist/render/pageFamilies.d.ts.map +0 -1
  414. package/dist/render/pageFamilies.js +0 -169
  415. package/dist/render/pageFamilies.js.map +0 -1
  416. package/dist/render/pager.d.ts +0 -9
  417. package/dist/render/pager.d.ts.map +0 -1
  418. package/dist/render/pager.js +0 -56
  419. package/dist/render/pager.js.map +0 -1
  420. package/dist/render/sceneNaming.d.ts +0 -14
  421. package/dist/render/sceneNaming.d.ts.map +0 -1
  422. package/dist/render/sceneNaming.js +0 -173
  423. package/dist/render/sceneNaming.js.map +0 -1
  424. package/dist/render/templates.d.ts +0 -5
  425. package/dist/render/templates.d.ts.map +0 -1
  426. package/dist/render/templates.js +0 -68
  427. package/dist/render/templates.js.map +0 -1
  428. package/dist/render/views.d.ts +0 -115
  429. package/dist/render/views.d.ts.map +0 -1
  430. package/dist/render/views.js +0 -81
  431. package/dist/render/views.js.map +0 -1
  432. package/dist/setup/commands.d.ts +0 -3
  433. package/dist/setup/commands.d.ts.map +0 -1
  434. package/dist/setup/commands.js +0 -9
  435. package/dist/setup/commands.js.map +0 -1
  436. package/dist/setup/index.d.ts +0 -3
  437. package/dist/setup/index.d.ts.map +0 -1
  438. package/dist/setup/index.js +0 -4
  439. package/dist/setup/index.js.map +0 -1
  440. package/dist/setup/pages/backup_receipt.d.ts +0 -24
  441. package/dist/setup/pages/backup_receipt.d.ts.map +0 -1
  442. package/dist/setup/pages/backup_receipt.js +0 -198
  443. package/dist/setup/pages/backup_receipt.js.map +0 -1
  444. package/dist/setup/pages/first_use_wizard.d.ts +0 -24
  445. package/dist/setup/pages/first_use_wizard.d.ts.map +0 -1
  446. package/dist/setup/pages/first_use_wizard.js +0 -169
  447. package/dist/setup/pages/first_use_wizard.js.map +0 -1
  448. package/dist/setup/pages/health_report.d.ts +0 -24
  449. package/dist/setup/pages/health_report.d.ts.map +0 -1
  450. package/dist/setup/pages/health_report.js +0 -152
  451. package/dist/setup/pages/health_report.js.map +0 -1
  452. package/dist/setup/pages/import_restore.d.ts +0 -24
  453. package/dist/setup/pages/import_restore.d.ts.map +0 -1
  454. package/dist/setup/pages/import_restore.js +0 -179
  455. package/dist/setup/pages/import_restore.js.map +0 -1
  456. package/dist/setup/routes.d.ts +0 -3
  457. package/dist/setup/routes.d.ts.map +0 -1
  458. package/dist/setup/routes.js +0 -2
  459. package/dist/setup/routes.js.map +0 -1
  460. package/dist/shared/commandSpec.d.ts +0 -34
  461. package/dist/shared/commandSpec.d.ts.map +0 -1
  462. package/dist/shared/commandSpec.js +0 -8
  463. package/dist/shared/commandSpec.js.map +0 -1
  464. package/dist/shared/fail.d.ts +0 -4
  465. package/dist/shared/fail.d.ts.map +0 -1
  466. package/dist/shared/fail.js +0 -16
  467. package/dist/shared/fail.js.map +0 -1
  468. package/dist/shared/params.d.ts +0 -4
  469. package/dist/shared/params.d.ts.map +0 -1
  470. package/dist/shared/params.js +0 -31
  471. package/dist/shared/params.js.map +0 -1
  472. package/dist/space/commands.d.ts +0 -3
  473. package/dist/space/commands.d.ts.map +0 -1
  474. package/dist/space/commands.js +0 -6
  475. package/dist/space/commands.js.map +0 -1
  476. package/dist/space/index.d.ts +0 -3
  477. package/dist/space/index.d.ts.map +0 -1
  478. package/dist/space/index.js +0 -4
  479. package/dist/space/index.js.map +0 -1
  480. package/dist/space/location.d.ts +0 -82
  481. package/dist/space/location.d.ts.map +0 -1
  482. package/dist/space/location.js +0 -324
  483. package/dist/space/location.js.map +0 -1
  484. package/dist/space/pages/fixed_spot.d.ts +0 -24
  485. package/dist/space/pages/fixed_spot.d.ts.map +0 -1
  486. package/dist/space/pages/fixed_spot.js +0 -122
  487. package/dist/space/pages/fixed_spot.js.map +0 -1
  488. package/dist/space/pages/location_manage.d.ts +0 -24
  489. package/dist/space/pages/location_manage.d.ts.map +0 -1
  490. package/dist/space/pages/location_manage.js +0 -182
  491. package/dist/space/pages/location_manage.js.map +0 -1
  492. package/dist/space/pages/space_view.d.ts +0 -24
  493. package/dist/space/pages/space_view.d.ts.map +0 -1
  494. package/dist/space/pages/space_view.js +0 -185
  495. package/dist/space/pages/space_view.js.map +0 -1
  496. package/dist/space/pages/suggest_storage.d.ts +0 -24
  497. package/dist/space/pages/suggest_storage.d.ts.map +0 -1
  498. package/dist/space/pages/suggest_storage.js +0 -179
  499. package/dist/space/pages/suggest_storage.js.map +0 -1
  500. package/dist/space/routes.d.ts +0 -3
  501. package/dist/space/routes.d.ts.map +0 -1
  502. package/dist/space/routes.js +0 -24
  503. package/dist/space/routes.js.map +0 -1
  504. package/dist/stats/commands.d.ts +0 -3
  505. package/dist/stats/commands.d.ts.map +0 -1
  506. package/dist/stats/commands.js +0 -6
  507. package/dist/stats/commands.js.map +0 -1
  508. package/dist/stats/index.d.ts +0 -3
  509. package/dist/stats/index.d.ts.map +0 -1
  510. package/dist/stats/index.js +0 -4
  511. package/dist/stats/index.js.map +0 -1
  512. package/dist/stats/pages/expiring.d.ts +0 -24
  513. package/dist/stats/pages/expiring.d.ts.map +0 -1
  514. package/dist/stats/pages/expiring.js +0 -220
  515. package/dist/stats/pages/expiring.js.map +0 -1
  516. package/dist/stats/pages/idle.d.ts +0 -24
  517. package/dist/stats/pages/idle.d.ts.map +0 -1
  518. package/dist/stats/pages/idle.js +0 -181
  519. package/dist/stats/pages/idle.js.map +0 -1
  520. package/dist/stats/pages/inventory_stat.d.ts +0 -24
  521. package/dist/stats/pages/inventory_stat.d.ts.map +0 -1
  522. package/dist/stats/pages/inventory_stat.js +0 -165
  523. package/dist/stats/pages/inventory_stat.js.map +0 -1
  524. package/dist/stats/pages/overview.d.ts +0 -24
  525. package/dist/stats/pages/overview.d.ts.map +0 -1
  526. package/dist/stats/pages/overview.js +0 -238
  527. package/dist/stats/pages/overview.js.map +0 -1
  528. package/dist/stats/routes.d.ts +0 -3
  529. package/dist/stats/routes.d.ts.map +0 -1
  530. package/dist/stats/routes.js +0 -16
  531. package/dist/stats/routes.js.map +0 -1
  532. package/dist/stats/stats.d.ts +0 -4
  533. package/dist/stats/stats.d.ts.map +0 -1
  534. package/dist/stats/stats.js +0 -92
  535. package/dist/stats/stats.js.map +0 -1
@@ -1,169 +0,0 @@
1
- // setup能力·first_use_wizard页装配(#816 域票填内容:6步向导真页)。
2
- //
3
- // 信息结构对齐老 `开始使用/first_use_wizard.html`:6步步骤条/环境信息/建库结果/下一步。
4
- // 数据只用真 envelope(home.care.write kind=init 的 receipt 回执)+运行环境实测值,
5
- // 不虚构:步骤状态由回执是否含“已初始化”推导,环境值取自当前进程实测。
6
- // 必需块原文=契约附录(事实源),逐条落在 data-need 属性里;三方对账照旧。
7
- import { readFileSync } from 'node:fs';
8
- import { platform, arch } from 'node:os';
9
- import { fillTemplate, escapeHtml, homeCopyArea, homeCopyLog, homeNowStamp } from '../../render/index.js';
10
- export const FAMILY = 'first_use_wizard';
11
- export const PAGE_META = {
12
- domain: 'setup',
13
- family: FAMILY,
14
- key: 'home.care.write',
15
- shape: 'receipt',
16
- preset: { "kind": "init" },
17
- rows: [{ "key": "home.care.write", "preset": { "kind": "init" } }],
18
- };
19
- export const REQUIRED_BLOCKS = {
20
- "empty": [
21
- "异常:数据解析失败/数据校验失败/初始化失败",
22
- "幂等提示:已初始化"
23
- ],
24
- "fields": [
25
- "6步步骤条",
26
- "环境信息",
27
- "建库结果",
28
- "下一步"
29
- ],
30
- "operations": [
31
- "开始初始化",
32
- "一键重试",
33
- "先配置环境变量",
34
- "开始录入第一批",
35
- "知道了",
36
- "复制数据",
37
- "复制日志"
38
- ],
39
- "status": [
40
- "done",
41
- "current",
42
- "fail",
43
- "pending"
44
- ]
45
- };
46
- const STEPS = ['环境检测', '路径确认', '建库', '建分类', '引导录入', '完成回执'];
47
- function msgOf(env) {
48
- const d = env.data;
49
- return typeof d.message === 'string' ? d.message : '';
50
- }
51
- function countOf(msg) {
52
- const m = msg.match(/((\d+) 件)/);
53
- return m ? m[1] : '—';
54
- }
55
- // 装配入口:真 envelope(真命令链产出)+本族模板 → 同形整页。
56
- // fail-closed:模板缺失/标记异常(fillTemplate 内抛)不返空页。
57
- // 复制区走共用件(envelope 投影,三格式恒开;receipt 形 data={ok,message} 同走 buildDataText);`ctx.command` 由交付链供给,直调缺省按本族主 key。
58
- export function renderFamilyPage(env, ctx) {
59
- const template = readFileSync(new URL('../../../templates/setup/first_use_wizard.html', import.meta.url), 'utf8');
60
- const msg = msgOf(env);
61
- const done = msg.includes('已初始化');
62
- const count = countOf(msg);
63
- const steps = STEPS.map((t, i) => {
64
- const st = done ? 'done' : i === 0 ? 'current' : 'pending';
65
- const label = done ? '已完成' : i === 0 ? '进行中' : '待办';
66
- return '<div class="su-step" data-status="' + st + '"><b>' + (i + 1) + '</b>'
67
- + escapeHtml(t) + '<i>' + label + '</i></div>';
68
- }).join('');
69
- // #817 ④:实心只留「开始录入第一批」(页内「下一步」指向它),「开始初始化」降 ghost(只在完成后那支渲染)。
70
- const opInit = '<button class="su-btn ghost" data-need="开始初始化" data-t="请帮我完成首次使用初始化">开始初始化</button>';
71
- const opGuide = '<button class="su-btn' + (done ? '' : ' alt') + '" data-need="开始录入第一批" data-t="请帮我录入第一批物品">开始录入第一批</button>';
72
- const opFirst = done ? opGuide + opInit
73
- : '<button class="su-btn" data-need="开始初始化" data-t="请帮我完成首次使用初始化">开始初始化</button>' + opGuide;
74
- const content = '<style>'
75
- + '.su-wrap{max-width:960px;margin:0 auto;padding:0 0 24px}'
76
- + '.su-hero{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #e3e3e8;border-radius:20px;padding:24px;margin:0 0 16px}'
77
- + '.su-eyebrow{color:#007aff;font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:8px}'
78
- + '.su-lead{color:#6e6e73;font-size:15px;margin:8px 0 0}'
79
- + '.su-sec{background:#fff;border:1px solid #e3e3e8;border-radius:16px;padding:18px;margin:16px 0}'
80
- + '.su-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0}'
81
- + '.su-step{background:#f2f4f8;border-radius:12px;padding:10px 8px;text-align:center;font-size:13px;color:#6e6e73}'
82
- + '.su-step b{display:block;font-size:16px;margin-bottom:2px}'
83
- + '.su-step i{display:block;font-style:normal;font-size:12px;margin-top:2px}'
84
- + '.su-step[data-status="done"]{background:#e9f8ef;color:#1d7a3f}'
85
- + '.su-step[data-status="current"]{background:#f5f8ff;border:1.5px solid #007aff;color:#007aff}'
86
- + '.su-step[data-status="fail"]{background:#ffecec;color:#c22e2e}'
87
- + '.su-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}'
88
- + '.su-card{background:#fff;border:1px solid #e3e3e8;border-radius:14px;padding:14px}'
89
- + '.su-card b{display:block;font-size:13px;color:#6e6e73;margin-bottom:4px}'
90
- + '.su-card span{font-size:17px;font-weight:700}'
91
- + '.su-tablewrap{overflow-x:auto;max-width:100%}'
92
- + '.su-table{width:100%;border-collapse:collapse;font-size:14px}'
93
- + '.su-table th,.su-table td{text-align:left;padding:10px 12px;border-bottom:1px solid #eee;vertical-align:top}'
94
- + '.su-table th{color:#6e6e73;font-weight:600;white-space:nowrap}'
95
- + '.su-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}'
96
- + '.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}'
97
- + '.su-btn.alt{background:#1d1d1f}.su-btn.ghost{background:#fff;color:#007aff;border:1.5px solid #007aff}'
98
- + '.su-note{background:#fff8e8;border:1px solid #f0dfae;border-radius:14px;padding:12px 16px;margin:12px 0;font-size:14px;color:#7a5d12}'
99
- + '.su-ok{color:#1d7a3f;font-weight:700}.su-warn{color:#b07000;font-weight:700}'
100
- + '.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)}'
101
- + '.su-toast.show{opacity:1}'
102
- + 'details.su-raw{margin:16px 0;font-size:13px;color:#6e6e73}'
103
- + 'details.su-raw summary{min-height:44px;display:flex;align-items:center;cursor:pointer}'
104
- + 'details.su-raw pre{white-space:pre-wrap;word-break:break-word;background:#1d1d1f;color:#f5f5f7;border-radius:12px;padding:12px;font-size:12px}'
105
- // 390 档(≤820):步骤卡两列一档 —— 三等分太挤、单列太长(#817 seq 67 的 ③)。
106
- + '@media(max-width:820px){.su-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.su-btn{width:100%}}'
107
- + '</style>'
108
- + '<div class="su-wrap">'
109
- + '<div class="su-hero"><div class="su-eyebrow">开始使用</div>'
110
- + '<p class="su-lead">跟着六个步骤完成初始化,随时可以重进本页确认状态。</p></div>'
111
- + '<section class="su-sec" data-block="fields">'
112
- + '<h2 data-need="6步步骤条">六个步骤</h2>'
113
- + '<div class="su-steps" data-need="done" data-extra="current fail pending">' + steps + '</div>'
114
- + '<h2 data-need="环境信息">环境信息</h2>'
115
- + '<div class="su-tablewrap"><table class="su-table">'
116
- + '<tr><th>操作系统</th><td>' + escapeHtml(platform()) + ' ' + escapeHtml(arch()) + '</td></tr>'
117
- + '<tr><th>运行环境</th><td>' + escapeHtml(process.version) + '</td></tr>'
118
- + '<tr><th>库状态</th><td>' + escapeHtml(done ? '已初始化' : msg === '' ? '尚未初始化' : msg) + '</td></tr>'
119
- + '</table></div>'
120
- + '<h2 data-need="建库结果">建库结果</h2>'
121
- + '<div class="su-grid">'
122
- + '<div class="su-card"><b>已有物品</b><span>' + escapeHtml(count) + ' 件</span></div>'
123
- + '<div class="su-card"><b>初始化状态</b><span class="' + (done ? 'su-ok' : 'su-warn') + '">' + (done ? '已完成' : '待初始化') + '</span></div>'
124
- + '</div>'
125
- + (done
126
- ? '<p class="su-note" data-need="幂等提示:已初始化">已经初始化过了,直接使用即可,重复进入不会重复建库。</p>'
127
- : '<p class="su-note" data-need="幂等提示:已初始化">还没有初始化,完成后重复进入会看到幂等提示:已初始化,不会重复建库。</p>')
128
- + '<h2 data-need="下一步">下一步</h2>'
129
- + '<p>初始化完成后,建议先去查一次异常,确认数据健康,再开始录入第一批物品。</p>'
130
- + '</section>'
131
- + '<section class="su-sec" data-block="operations">'
132
- + '<h2>可以做的操作</h2>'
133
- + '<div class="su-actions">'
134
- + opFirst
135
- + '<button class="su-btn ghost" data-need="先配置环境变量" data-t="请帮我配置数据存储环境">先配置环境变量</button>'
136
- + '<button class="su-btn ghost" data-need="一键重试" data-t="初始化失败请重试">一键重试</button>'
137
- + '<button class="su-btn ghost" data-need="知道了" id="suKnow">知道了</button>'
138
- + '</div>'
139
- + '<span data-need="复制数据" hidden></span>'
140
- + '<span data-need="复制日志" hidden></span>'
141
- + homeCopyArea({
142
- data: { envelope: env },
143
- log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
144
- })
145
- + '</section>'
146
- + '<section class="su-sec" data-block="empty">'
147
- + '<h2>这种时候会怎样</h2>'
148
- // #817:一键重试在「可以做的操作」区,那一段在本段之前,方位词写「上面」。
149
- + '<p data-need="异常:数据解析失败/数据校验失败/初始化失败">如果页面提示解析失败、校验失败或者初始化失败,用上面的一键重试再走一次,大多数情况一次就能过。</p>'
150
- + '</section>'
151
- + '<section class="su-sec" data-block="status">'
152
- + '<h2>口径说明</h2>'
153
- + '<p>步骤有四种状态:已完成,进行中,失败,待办。当前状态也标在每个步骤卡片上。</p>'
154
- + '</section>'
155
- + '<details hidden class="su-raw"><summary>原始回执</summary><pre>'
156
- + escapeHtml(JSON.stringify(env.data)) + '</pre></details>'
157
- + '</div>'
158
- + '<div class="su-toast" id="suToast" role="status"></div>'
159
- + '<script>'
160
- + 'function suToast(t){var el=document.getElementById("suToast");if(!el)return;el.textContent=t;el.classList.add("show");setTimeout(function(){el.classList.remove("show")},3000)}'
161
- + '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}}'
162
- + 'if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(text).then(function(){suToast(ok)}).catch(function(){suToast(fb()?ok:"复制失败,请长按手动复制")})}else{suToast(fb()?ok:"复制失败,请长按手动复制")}}'
163
- + 'document.querySelectorAll("[data-t]").forEach(function(b){b.addEventListener("click",function(){suCopy(b.getAttribute("data-t"),"指令已复制,发给助手即可执行")})});'
164
- + 'var kd=document.getElementById("suKnow");if(kd)kd.addEventListener("click",function(){suToast("收到")});'
165
- + '</script>'
166
- + '';
167
- return fillTemplate(template, content);
168
- }
169
- //# sourceMappingURL=first_use_wizard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"first_use_wizard.js","sourceRoot":"","sources":["../../../src/setup/pages/first_use_wizard.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import type { Envelope } from 'base-link-core';
2
- export declare const FAMILY: "health_report";
3
- export declare const PAGE_META: {
4
- readonly domain: "setup";
5
- readonly family: "health_report";
6
- readonly key: "home.care.query";
7
- readonly shape: "list";
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=health_report.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"health_report.d.ts","sourceRoot":"","sources":["../../../src/setup/pages/health_report.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,eAAO,MAAM,MAAM,EAAG,eAAwB,CAAC;AAE/C,eAAO,MAAM,SAAS;;;;;qBAKO,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;CACnI,CAAC;AAEX,eAAO,MAAM,eAAe,EAwBvB;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC,CAAC;AAkBF,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,CAmGvH"}
@@ -1,152 +0,0 @@
1
- // setup能力·health_report页装配(#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 = 'health_report';
7
- export const PAGE_META = {
8
- domain: 'setup',
9
- family: FAMILY,
10
- key: 'home.care.query',
11
- shape: 'list',
12
- preset: { "kind": "lint" },
13
- rows: [{ "key": "home.care.query", "preset": { "kind": "lint" } }],
14
- };
15
- export const REQUIRED_BLOCKS = {
16
- "empty": [
17
- "空态:数据健康良好+未发现数据问题",
18
- "拦截态:请先勾选至少1个问题",
19
- "异常:数据解析失败/数据校验失败"
20
- ],
21
- "fields": [
22
- "环境信息",
23
- "检查项列表",
24
- "问题总数",
25
- "健康标记",
26
- "动作列"
27
- ],
28
- "operations": [
29
- "勾选",
30
- "复制选中修复引导",
31
- "知道了",
32
- "复制数据",
33
- "复制日志"
34
- ],
35
- "status": [
36
- "良好",
37
- "待处理"
38
- ]
39
- };
40
- /** 逐项动作:动作列说的是这一项该做什么(新链没有逐项动作的项写「—」,不三行同一句)。 */
41
- const ACTIONS = { '无标签物品': '补标签', '无照片物品': '补照片', '单级位置': '补成两级位置' };
42
- const actionOf = (name) => ACTIONS[name] ?? '—';
43
- function issuesOf(env) {
44
- const d = env.data;
45
- const items = Array.isArray(d.items) ? d.items : [];
46
- return items
47
- .filter((x) => typeof x.name === 'string')
48
- .map((x) => ({ name: String(x.name).replace(/ ?\d+ ?[件条]$/, ''), count: Number(x.count ?? 0) })); // 项名去掉结尾的「N 件/N 条」:数量列已有一格
49
- }
50
- // 装配入口:真 envelope(真命令链产出)+本族模板 → 同形整页;fail-closed:模板缺失/标记异常即抛,不返空页。
51
- // 复制区走共用件(envelope 投影,三格式恒开);`ctx.command` 由交付链供给,直调缺省按本族主 key。
52
- export function renderFamilyPage(env, ctx) {
53
- const template = readFileSync(new URL('../../../templates/setup/health_report.html', import.meta.url), 'utf8');
54
- const issues = issuesOf(env);
55
- const real = issues.filter((x) => !x.name.startsWith('健康'));
56
- const total = real.reduce((a, x) => a + (Number.isFinite(x.count) ? x.count : 0), 0);
57
- const healthy = real.length === 0;
58
- const rows = real.map((x, i) => '<tr>'
59
- + '<td class="ilife-block-data-table-cell-left" data-label="勾选"><input type="checkbox" class="su-check" data-idx="' + i
60
- + '" aria-label="勾选第' + (i + 1) + '项"></td>'
61
- + '<td class="ilife-block-data-table-cell-left" data-label="检查项">' + escapeHtml(x.name) + '</td>'
62
- + '<td class="ilife-block-data-table-cell-left" data-label="数量">' + escapeHtml(String(x.count)) + '</td>'
63
- + '<td class="ilife-block-data-table-cell-left" data-label="动作">' + escapeHtml(actionOf(x.name)) + '</td></tr>').join('');
64
- const content = '<style>'
65
- + '.su-wrap{max-width:960px;margin:0 auto;padding:0 0 24px}'
66
- + '.su-hero{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #e3e3e8;border-radius:20px;padding:24px;margin:0 0 16px}'
67
- + '.su-eyebrow{color:#007aff;font-size:12px;font-weight:800;letter-spacing:.1em;margin-bottom:8px}'
68
- + '.su-lead{color:#6e6e73;font-size:15px;margin:8px 0 0}'
69
- + '.su-sec{background:#fff;border:1px solid #e3e3e8;border-radius:16px;padding:18px;margin:16px 0}'
70
- + '.su-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px}'
71
- + '.su-card{background:#fff;border:1px solid #e3e3e8;border-radius:14px;padding:14px}'
72
- + '.su-card b{display:block;font-size:13px;color:#6e6e73;margin-bottom:4px}'
73
- + '.su-card span{font-size:22px;font-weight:750}'
74
- + '.su-ok{color:#1d7a3f}.su-bad{color:#c22e2e}.su-warn{color:#b07000}'
75
- // #817 seq 68(③双端不塌):这张表原先用自家 .su-table —— 390 档四列被压成窄列、单元格词中折行。
76
- // 改用公共层表格块(`.ilife-block-data-table` + 每格 data-label):≤640 档它把行块级化成
77
- // 「列名 + 值」一格格排下去,390 档不再分窄列;宽档仍是普通表格。表头折叠后仍留「勾选/检查项/
78
- // 数量/动作」四处 data-label,行与列的对应关系不丢。
79
- + '.su-check{width:44px;height:44px;accent-color:#007aff}'
80
- + '.su-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}'
81
- + '.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}'
82
- + '.su-btn.alt{background:#1d1d1f}.su-btn.ghost{background:#fff;color:#007aff;border:1.5px solid #007aff}'
83
- + '.su-note{background:#fff8e8;border:1px solid #f0dfae;border-radius:14px;padding:12px 16px;margin:12px 0;font-size:14px;color:#7a5d12}'
84
- + '.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)}'
85
- + '.su-toast.show{opacity:1}'
86
- + 'details.su-raw{margin:16px 0;font-size:13px;color:#6e6e73}'
87
- + 'details.su-raw summary{min-height:44px;display:flex;align-items:center;cursor:pointer}'
88
- + 'details.su-raw pre{white-space:pre-wrap;word-break:break-word;background:#1d1d1f;color:#f5f5f7;border-radius:12px;padding:12px;font-size:12px}'
89
- + '@media(max-width:820px){.su-btn{width:100%}}'
90
- + '</style>'
91
- + '<div class="su-wrap">'
92
- + '<div class="su-hero"><div class="su-eyebrow">开始使用</div>'
93
- // #817:壳里的 h1 已是「查异常」,这里再挂同义的 h2「数据健康检查」=同一事实两遍,删掉。
94
- + '<p class="su-lead">' + (healthy ? '目前没有发现数据问题,继续保持。' : '发现 ' + total + ' 个待处理项,勾选后复制修复引导发给助手。') + '</p></div>'
95
- + '<section class="su-sec" data-block="fields">'
96
- + '<h2 data-need="环境信息">本次检查概况</h2>'
97
- + '<div class="su-grid">'
98
- + '<div class="su-card"><b data-need="问题总数">问题总数</b><span class="' + (healthy ? 'su-ok' : 'su-bad') + '">' + total + '</span></div>'
99
- + '<div class="su-card"><b>检查项数</b><span>' + real.length + '</span></div>'
100
- + '<div class="su-card"><b data-need="健康标记">健康标记</b><span class="' + (healthy ? 'su-ok' : 'su-warn') + '" data-need="良好" data-extra="待处理">' + (healthy ? '良好' : '待处理') + '</span></div>'
101
- + '</div>'
102
- + '<h2 data-need="检查项列表">检查项</h2>'
103
- + (healthy
104
- ? '<p class="su-note">当前没有待处理项,继续保持即可。</p><p hidden><span data-need="勾选"></span><span data-need="动作列"></span></p>'
105
- : '<div class="ilife-block-data-table"><table class="ilife-block-data-table-table">'
106
- + '<thead><tr><th scope="col" class="ilife-block-data-table-cell-left" data-need="勾选">勾选</th>'
107
- + '<th scope="col" class="ilife-block-data-table-cell-left">检查项</th>'
108
- + '<th scope="col" class="ilife-block-data-table-cell-left">数量</th>'
109
- + '<th scope="col" class="ilife-block-data-table-cell-left" data-need="动作列">动作</th></tr></thead>'
110
- + '<tbody>' + rows + '</tbody></table></div>')
111
- + '</section>'
112
- + '<section class="su-sec" data-block="operations">'
113
- + '<h2>可以做的操作</h2>'
114
- + '<div class="su-actions">'
115
- + '<button class="su-btn" data-need="复制选中修复引导" id="suCopyFix">复制选中修复引导</button>'
116
- + '<button class="su-btn ghost" data-need="知道了" id="suKnow">知道了</button>'
117
- + '</div>'
118
- + '<span data-need="复制数据" hidden></span>'
119
- + '<span data-need="复制日志" hidden></span>'
120
- + homeCopyArea({
121
- data: { envelope: env },
122
- log: { envelope: env, copyLog: homeCopyLog({ command: ctx?.command ?? 'home-cmd-read ' + PAGE_META.key, actionAt: ctx?.actionAt ?? homeNowStamp() }) },
123
- })
124
- + '</section>'
125
- + '<section class="su-sec" data-block="empty">'
126
- + '<h2>这种时候会怎样</h2>'
127
- + (healthy
128
- ? '<p data-need="空态:数据健康良好+未发现数据问题">数据健康良好,没有发现数据问题。</p>'
129
- : '<p>待处理项一条条列在上面,处理完再查一次,数字就会跟着降。</p><p hidden data-need="空态:数据健康良好+未发现数据问题">数据健康良好,没有发现数据问题。</p>')
130
- + '<p data-need="拦截态:请先勾选至少1个问题">点复制之前请先勾选至少一项,没有勾选就点复制会没有内容可复制。</p>'
131
- + '<p data-need="异常:数据解析失败/数据校验失败">如果页面提示解析失败或者校验失败,说明这次检查没有跑起来,换个时间再查一次。</p>'
132
- + '</section>'
133
- + '<section class="su-sec" data-block="status">'
134
- + '<h2>口径说明</h2>'
135
- + '<p>健康标记只有两种:良好表示没有待处理项,待处理表示还有事项需要看。</p>'
136
- + '</section>'
137
- + '<details hidden class="su-raw"><summary>原始回执</summary><pre>'
138
- + escapeHtml(JSON.stringify(env.data)) + '</pre></details>'
139
- + '</div>'
140
- + '<div class="su-toast" id="suToast" role="status"></div>'
141
- + '<script>'
142
- + 'var ISSUES=' + JSON.stringify(real.map((x) => x.name)) + ';'
143
- + '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)}'
144
- + '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}}'
145
- + 'if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(text).then(function(){suToast(ok)}).catch(function(){suToast(fb()?ok:"复制失败,请长按手动复制")})}else{suToast(fb()?ok:"复制失败,请长按手动复制")}}'
146
- + 'var fix=document.getElementById("suCopyFix");if(fix)fix.addEventListener("click",function(){var picked=[];document.querySelectorAll(".su-check").forEach(function(c,i){if(c.checked&&ISSUES[i])picked.push("修复项:"+ISSUES[i])});'
147
- + 'if(!picked.length){suToast("请先勾选至少一项,再复制修复引导");return}suCopy("请帮我做数据健康检查:\\n\\n"+picked.join("\\n"),"修复引导已复制")});'
148
- + 'var kd=document.getElementById("suKnow");if(kd)kd.addEventListener("click",function(){suToast("收到")});'
149
- + '</script>';
150
- return fillTemplate(template, content);
151
- }
152
- //# sourceMappingURL=health_report.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"health_report.js","sourceRoot":"","sources":["../../../src/setup/pages/health_report.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,179 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"import_restore.js","sourceRoot":"","sources":["../../../src/setup/pages/import_restore.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { HomeRouteSpec } from '../shared/commandSpec.js';
2
- export declare const SETUP_ROUTES: readonly HomeRouteSpec[];
3
- //# sourceMappingURL=routes.d.ts.map
@@ -1 +0,0 @@
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"}