most-box 0.2.3 → 0.2.5

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 (111) hide show
  1. package/README.md +3 -26
  2. package/electron/main.js +366 -30
  3. package/electron/preload.js +16 -1
  4. package/electron/updateChecker.js +18 -11
  5. package/electron/updateChecker.test.js +23 -7
  6. package/out/admin/index.html +0 -0
  7. package/out/app/index.html +0 -0
  8. package/out/assets/AppShell-oF8wPXde.js +1 -0
  9. package/out/assets/FilePreviewOverlay-DTBZt89J.js +1 -0
  10. package/out/assets/LanguageToggle-HAJ3D6Ne.js +1 -0
  11. package/out/assets/MarketingHeader-B3vYocUz.js +1 -0
  12. package/out/assets/MarketingLayout-CapVVXTP.js +1 -0
  13. package/out/assets/{MarketingThemeToggle-DHVvLtms.js → MarketingThemeToggle-B47H68ro.js} +1 -1
  14. package/out/assets/{MilkdownEditor-WdGJyEa8.js → MilkdownEditor-CRA9oxMp.js} +1 -1
  15. package/out/assets/{OpenSidebarButton-CtsDYSq0.js → OpenSidebarButton-D3JRO-Hh.js} +1 -1
  16. package/out/assets/{SidebarAccount-4NFTcAF7.js → SidebarAccount-8_hQAYXx.js} +1 -1
  17. package/out/assets/arrow-right-mNO53HQi.js +1 -0
  18. package/out/assets/{circle-alert-BQoSDxUe.js → circle-alert-CofRTRHr.js} +1 -1
  19. package/out/assets/cloud-DAGFCFIp.js +1 -0
  20. package/out/assets/{copy-BtJHJnqH.js → copy-5aEv78Eq.js} +1 -1
  21. package/out/assets/{download-Bg-OdoxM.js → download-Bhqn6hL1.js} +1 -1
  22. package/out/assets/{downloadValidation-DS9_BV-n.js → downloadValidation-eInMiVSX.js} +1 -1
  23. package/out/assets/{external-link-m8ZIQe4p.js → external-link-CNR21yFA.js} +1 -1
  24. package/out/assets/{file-text-DG1orIkZ.js → file-text-CFfvvCnM.js} +1 -1
  25. package/out/assets/folder-BGJCjyba.js +1 -0
  26. package/out/assets/{hard-drive-BB-sllXA.js → hard-drive-4vHpA5kz.js} +1 -1
  27. package/out/assets/index--p9MKNEl.js +31 -0
  28. package/out/assets/index-DEu4udaa.css +1 -0
  29. package/out/assets/index.lazy-2K3f5PZe.js +1 -0
  30. package/out/assets/index.lazy-B-2etVwK.js +1 -0
  31. package/out/assets/index.lazy-B4WTQF5E.js +1 -0
  32. package/out/assets/index.lazy-BFfsQrRe.js +1 -0
  33. package/out/assets/index.lazy-C5udBnrO.js +1 -0
  34. package/out/assets/{index.lazy-DwKnzBXo.js → index.lazy-C84HrZpm.js} +1 -1
  35. package/out/assets/index.lazy-CBC2N5p_.js +3 -0
  36. package/out/assets/index.lazy-CzANViGX.js +1 -0
  37. package/out/assets/index.lazy-D3cw7yyA.js +2 -0
  38. package/out/assets/{index.lazy-C3z-lGsL.js → index.lazy-DVVZzbCN.js} +1 -1
  39. package/out/assets/index.lazy-DxZgywoV.js +1 -0
  40. package/out/assets/{index.lazy-DSjaivix.js → index.lazy-RBLN4SE9.js} +1 -1
  41. package/out/assets/index.lazy-s4E2z9AY.js +2 -0
  42. package/out/assets/{key-round-DIQ3Xt5F.js → key-round-BpSdpOHi.js} +1 -1
  43. package/out/assets/loader-ByMmV2_4.js +1 -0
  44. package/out/assets/{lock-tf1t2yuy.js → lock-C0pdaery.js} +1 -1
  45. package/out/assets/{message-square-DaQH7q-P.js → message-square-Eu86zZup.js} +1 -1
  46. package/out/assets/{mp-DYPYks13.js → mp-CJWipckT.js} +1 -1
  47. package/out/assets/{music-DaFvU2DL.js → music-Btrhub6z.js} +1 -1
  48. package/out/assets/{notebook-pen-CqEFOHKx.js → notebook-pen-CfdFgaDE.js} +1 -1
  49. package/out/assets/play-D5r9Yvbq.js +1 -0
  50. package/out/assets/plus-Mlh7r_bm.js +1 -0
  51. package/out/assets/{refresh-cw-roxAhABl.js → refresh-cw--JB8k6mH.js} +1 -1
  52. package/out/assets/{save-DR0O9ReR.js → save-DN4eprSt.js} +1 -1
  53. package/out/assets/search-CbzMyENy.js +1 -0
  54. package/out/assets/{send-m1XCcuPn.js → send-D8p6f8OD.js} +1 -1
  55. package/out/assets/{shield-check-BwcvTU4U.js → shield-check-c0labdRH.js} +1 -1
  56. package/out/assets/{trash-2-CNpsqYc1.js → trash-2-zdhWec_U.js} +1 -1
  57. package/out/assets/triangle-alert-CO_5uXy2.js +1 -0
  58. package/out/assets/upload-BD23c5Pz.js +1 -0
  59. package/out/assets/{useChannelMessages-qJTlBnzX.js → useChannelMessages-D_306Ymv.js} +2 -2
  60. package/out/assets/useGameRoom-CURx56m6.js +1 -0
  61. package/out/assets/userProfile-oeBvU6ch.js +1 -0
  62. package/out/assets/{userStore-C4vdYsQp.js → userStore-q0BBZsIV.js} +1 -1
  63. package/out/assets/{wallet-CozFU6yK.js → wallet-DmZMdK9A.js} +1 -1
  64. package/out/assets/{wifi-DIR3g_8A.js → wifi-CVqaPDcv.js} +1 -1
  65. package/out/chat/index.html +0 -0
  66. package/out/chat/join/index.html +0 -0
  67. package/out/download/index.html +2 -2
  68. package/out/game/gandengyan/index.html +0 -0
  69. package/out/game/index.html +0 -0
  70. package/out/game/zhajinhua/index.html +0 -0
  71. package/out/index.html +2 -2
  72. package/out/note/index.html +0 -0
  73. package/out/ping/index.html +2 -2
  74. package/out/profile/index.html +0 -0
  75. package/out/web3/index.html +0 -0
  76. package/package.json +8 -1
  77. package/server/index.js +2 -2
  78. package/server/src/core/syncTimestamp.js +10 -0
  79. package/server/src/http/nodeStatus.js +16 -16
  80. package/server/src/http/routePolicy.js +2 -2
  81. package/server/src/http/routes/nodeRoutes.js +21 -19
  82. package/server/src/index.js +578 -960
  83. package/server/src/utils/accountBackup.js +134 -0
  84. package/server/src/utils/api.js +149 -9
  85. package/out/assets/AppShell-B1U4lDqV.js +0 -1
  86. package/out/assets/FilePreviewOverlay-Cme4vUhr.js +0 -1
  87. package/out/assets/LanguageToggle-CBpXWdO9.js +0 -1
  88. package/out/assets/MarketingHeader-CkcBATx2.js +0 -1
  89. package/out/assets/MarketingLayout-mQV6ciYc.js +0 -1
  90. package/out/assets/arrow-right-RldN7Rwi.js +0 -1
  91. package/out/assets/cloud-DHoTMeZY.js +0 -1
  92. package/out/assets/index-BJ7E8LJN.js +0 -31
  93. package/out/assets/index-C0xqKeu-.css +0 -1
  94. package/out/assets/index.lazy-B5hOQuoO.js +0 -2
  95. package/out/assets/index.lazy-B9ligvAg.js +0 -1
  96. package/out/assets/index.lazy-BZ7nMBcY.js +0 -3
  97. package/out/assets/index.lazy-C-2BI6Ew.js +0 -1
  98. package/out/assets/index.lazy-Cda9sU_h.js +0 -1
  99. package/out/assets/index.lazy-D5ybxeOu.js +0 -1
  100. package/out/assets/index.lazy-DMZi3gid.js +0 -1
  101. package/out/assets/index.lazy-Dvgt53xN.js +0 -1
  102. package/out/assets/index.lazy-Dvo4Ncqe.js +0 -2
  103. package/out/assets/index.lazy-GQILyi6o.js +0 -1
  104. package/out/assets/play-B7q6F75-.js +0 -1
  105. package/out/assets/plus-H2i2mspM.js +0 -1
  106. package/out/assets/search-ncblG-zw.js +0 -1
  107. package/out/assets/triangle-alert-DP9EP7IM.js +0 -1
  108. package/out/assets/upload-V--8p13l.js +0 -1
  109. package/out/assets/useGameRoom-C9hu7Cez.js +0 -1
  110. package/server/src/core/userSyncKeys.js +0 -36
  111. package/server/src/utils/noteBackup.js +0 -116
@@ -210,45 +210,47 @@ export function registerNodeRoutes(
210
210
  return c.json({ users: engine.listUsers() })
211
211
  })
212
212
 
213
- app.post('/api/user/sync/start', async c => {
213
+ app.get('/api/user/profile', c => {
214
214
  try {
215
- const body = await c.req.json()
216
- const result = await engine.startUserSync(c.get('userAddress'), body)
217
- appendNodeLog({
218
- event: 'node:user-sync:started',
219
- message: 'User sync started',
220
- data: {
221
- ownerAddress: result.ownerAddress,
222
- syncName: result.syncName,
223
- },
224
- })
225
- return c.json({ success: true, ...result })
215
+ return c.json(engine.getUserProfile(c.get('userAddress')))
226
216
  } catch (err) {
227
217
  return errorJson(c, err)
228
218
  }
229
219
  })
230
220
 
231
- app.get('/api/user/sync/status', c => {
221
+ app.put('/api/user/profile', async c => {
232
222
  try {
233
- return c.json(engine.getUserSyncStatus(c.get('userAddress')))
223
+ const body = await c.req.json()
224
+ const profile = engine.saveUserProfile(c.get('userAddress'), body)
225
+ return c.json({ success: true, profile })
234
226
  } catch (err) {
235
227
  return errorJson(c, err)
236
228
  }
237
229
  })
238
230
 
239
- app.get('/api/user/profile', c => {
231
+ app.get('/api/user/export', c => {
240
232
  try {
241
- return c.json(engine.getUserProfile(c.get('userAddress')))
233
+ return c.json(engine.exportUserData(c.get('userAddress')))
242
234
  } catch (err) {
243
235
  return errorJson(c, err)
244
236
  }
245
237
  })
246
238
 
247
- app.put('/api/user/profile', async c => {
239
+ app.post('/api/user/import', async c => {
248
240
  try {
249
241
  const body = await c.req.json()
250
- const profile = engine.saveUserProfile(c.get('userAddress'), body)
251
- return c.json({ success: true, profile })
242
+ const result = await engine.importUserData(c.get('userAddress'), body, {
243
+ overwriteProfile: true,
244
+ })
245
+ appendNodeLog({
246
+ event: 'node:user-data:imported',
247
+ message: 'User account backup imported',
248
+ data: {
249
+ ownerAddress: c.get('userAddress'),
250
+ result,
251
+ },
252
+ })
253
+ return c.json({ success: true, result })
252
254
  } catch (err) {
253
255
  return errorJson(c, err)
254
256
  }