@haex-space/vault-sdk 2.5.35 → 2.5.40

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.
@@ -72,39 +72,50 @@ var HAEXTENSION_METHODS = {
72
72
  filesystem: {
73
73
  saveFile: "haextension:filesystem:save-file",
74
74
  openFile: "haextension:filesystem:open-file",
75
- showImage: "haextension:filesystem:show-image",
76
- sync: {
77
- // Spaces
78
- listSpaces: "haextension:filesystem:sync:list-spaces",
79
- createSpace: "haextension:filesystem:sync:create-space",
80
- deleteSpace: "haextension:filesystem:sync:delete-space",
81
- // Files
82
- listFiles: "haextension:filesystem:sync:list-files",
83
- getFile: "haextension:filesystem:sync:get-file",
84
- uploadFile: "haextension:filesystem:sync:upload-file",
85
- downloadFile: "haextension:filesystem:sync:download-file",
86
- deleteFile: "haextension:filesystem:sync:delete-file",
87
- // Backends
88
- listBackends: "haextension:filesystem:sync:list-backends",
89
- addBackend: "haextension:filesystem:sync:add-backend",
90
- removeBackend: "haextension:filesystem:sync:remove-backend",
91
- testBackend: "haextension:filesystem:sync:test-backend",
92
- // Sync Rules
93
- listSyncRules: "haextension:filesystem:sync:list-sync-rules",
94
- addSyncRule: "haextension:filesystem:sync:add-sync-rule",
95
- updateSyncRule: "haextension:filesystem:sync:update-sync-rule",
96
- removeSyncRule: "haextension:filesystem:sync:remove-sync-rule",
97
- // Sync Operations
98
- getSyncStatus: "haextension:filesystem:sync:get-sync-status",
99
- triggerSync: "haextension:filesystem:sync:trigger-sync",
100
- pauseSync: "haextension:filesystem:sync:pause-sync",
101
- resumeSync: "haextension:filesystem:sync:resume-sync",
102
- // Conflict Resolution
103
- resolveConflict: "haextension:filesystem:sync:resolve-conflict",
104
- // UI Helpers
105
- selectFolder: "haextension:filesystem:sync:select-folder",
106
- scanLocal: "haextension:filesystem:sync:scan-local"
107
- }
75
+ showImage: "haextension:filesystem:show-image"
76
+ },
77
+ filesync: {
78
+ // Spaces
79
+ listSpaces: "haextension:filesync:list-spaces",
80
+ createSpace: "haextension:filesync:create-space",
81
+ deleteSpace: "haextension:filesync:delete-space",
82
+ // Files
83
+ listFiles: "haextension:filesync:list-files",
84
+ getFile: "haextension:filesync:get-file",
85
+ uploadFile: "haextension:filesync:upload-file",
86
+ downloadFile: "haextension:filesync:download-file",
87
+ deleteFile: "haextension:filesync:delete-file",
88
+ // Backends
89
+ listBackends: "haextension:filesync:list-backends",
90
+ addBackend: "haextension:filesync:add-backend",
91
+ removeBackend: "haextension:filesync:remove-backend",
92
+ testBackend: "haextension:filesync:test-backend",
93
+ // Sync Rules
94
+ listSyncRules: "haextension:filesync:list-sync-rules",
95
+ addSyncRule: "haextension:filesync:add-sync-rule",
96
+ updateSyncRule: "haextension:filesync:update-sync-rule",
97
+ removeSyncRule: "haextension:filesync:remove-sync-rule",
98
+ // Sync Operations
99
+ getSyncStatus: "haextension:filesync:get-sync-status",
100
+ triggerSync: "haextension:filesync:trigger-sync",
101
+ pauseSync: "haextension:filesync:pause-sync",
102
+ resumeSync: "haextension:filesync:resume-sync",
103
+ // Conflict Resolution
104
+ resolveConflict: "haextension:filesync:resolve-conflict",
105
+ // UI Helpers
106
+ selectFolder: "haextension:filesync:select-folder",
107
+ scanLocal: "haextension:filesync:scan-local",
108
+ // Sync Queue (persistent upload/download queue)
109
+ addToQueue: "haextension:filesync:add-to-queue",
110
+ getQueue: "haextension:filesync:get-queue",
111
+ getQueueSummary: "haextension:filesync:get-queue-summary",
112
+ startQueueEntry: "haextension:filesync:start-queue-entry",
113
+ completeQueueEntry: "haextension:filesync:complete-queue-entry",
114
+ failQueueEntry: "haextension:filesync:fail-queue-entry",
115
+ retryFailedQueue: "haextension:filesync:retry-failed-queue",
116
+ removeQueueEntry: "haextension:filesync:remove-queue-entry",
117
+ clearQueue: "haextension:filesync:clear-queue",
118
+ recoverQueue: "haextension:filesync:recover-queue"
108
119
  },
109
120
  storage: {
110
121
  getItem: "haextension:storage:get-item",
@@ -250,7 +261,7 @@ var FileSyncAPI = class {
250
261
  */
251
262
  async listSpacesAsync() {
252
263
  return this.client.request(
253
- HAEXTENSION_METHODS.filesystem.sync.listSpaces
264
+ HAEXTENSION_METHODS.filesync.listSpaces
254
265
  );
255
266
  }
256
267
  /**
@@ -258,7 +269,7 @@ var FileSyncAPI = class {
258
269
  */
259
270
  async createSpaceAsync(options) {
260
271
  return this.client.request(
261
- HAEXTENSION_METHODS.filesystem.sync.createSpace,
272
+ HAEXTENSION_METHODS.filesync.createSpace,
262
273
  options
263
274
  );
264
275
  }
@@ -266,7 +277,7 @@ var FileSyncAPI = class {
266
277
  * Delete a file space
267
278
  */
268
279
  async deleteSpaceAsync(spaceId) {
269
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.deleteSpace, {
280
+ await this.client.request(HAEXTENSION_METHODS.filesync.deleteSpace, {
270
281
  spaceId
271
282
  });
272
283
  }
@@ -278,7 +289,7 @@ var FileSyncAPI = class {
278
289
  */
279
290
  async listFilesAsync(options) {
280
291
  return this.client.request(
281
- HAEXTENSION_METHODS.filesystem.sync.listFiles,
292
+ HAEXTENSION_METHODS.filesync.listFiles,
282
293
  options
283
294
  );
284
295
  }
@@ -288,7 +299,7 @@ var FileSyncAPI = class {
288
299
  */
289
300
  async scanLocalAsync(options) {
290
301
  return this.client.request(
291
- HAEXTENSION_METHODS.filesystem.sync.scanLocal,
302
+ HAEXTENSION_METHODS.filesync.scanLocal,
292
303
  options
293
304
  );
294
305
  }
@@ -297,7 +308,7 @@ var FileSyncAPI = class {
297
308
  */
298
309
  async getFileAsync(fileId) {
299
310
  return this.client.request(
300
- HAEXTENSION_METHODS.filesystem.sync.getFile,
311
+ HAEXTENSION_METHODS.filesync.getFile,
301
312
  { fileId }
302
313
  );
303
314
  }
@@ -306,7 +317,7 @@ var FileSyncAPI = class {
306
317
  */
307
318
  async uploadFileAsync(options) {
308
319
  return this.client.request(
309
- HAEXTENSION_METHODS.filesystem.sync.uploadFile,
320
+ HAEXTENSION_METHODS.filesync.uploadFile,
310
321
  options
311
322
  );
312
323
  }
@@ -315,7 +326,7 @@ var FileSyncAPI = class {
315
326
  */
316
327
  async downloadFileAsync(options) {
317
328
  await this.client.request(
318
- HAEXTENSION_METHODS.filesystem.sync.downloadFile,
329
+ HAEXTENSION_METHODS.filesync.downloadFile,
319
330
  options
320
331
  );
321
332
  }
@@ -323,7 +334,7 @@ var FileSyncAPI = class {
323
334
  * Delete a file from the sync system
324
335
  */
325
336
  async deleteFileAsync(fileId) {
326
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.deleteFile, {
337
+ await this.client.request(HAEXTENSION_METHODS.filesync.deleteFile, {
327
338
  fileId
328
339
  });
329
340
  }
@@ -335,7 +346,7 @@ var FileSyncAPI = class {
335
346
  */
336
347
  async listBackendsAsync() {
337
348
  return this.client.request(
338
- HAEXTENSION_METHODS.filesystem.sync.listBackends
349
+ HAEXTENSION_METHODS.filesync.listBackends
339
350
  );
340
351
  }
341
352
  /**
@@ -343,7 +354,7 @@ var FileSyncAPI = class {
343
354
  */
344
355
  async addBackendAsync(options) {
345
356
  return this.client.request(
346
- HAEXTENSION_METHODS.filesystem.sync.addBackend,
357
+ HAEXTENSION_METHODS.filesync.addBackend,
347
358
  options
348
359
  );
349
360
  }
@@ -351,7 +362,7 @@ var FileSyncAPI = class {
351
362
  * Remove a storage backend
352
363
  */
353
364
  async removeBackendAsync(backendId) {
354
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.removeBackend, {
365
+ await this.client.request(HAEXTENSION_METHODS.filesync.removeBackend, {
355
366
  backendId
356
367
  });
357
368
  }
@@ -360,7 +371,7 @@ var FileSyncAPI = class {
360
371
  */
361
372
  async testBackendAsync(backendId) {
362
373
  return this.client.request(
363
- HAEXTENSION_METHODS.filesystem.sync.testBackend,
374
+ HAEXTENSION_METHODS.filesync.testBackend,
364
375
  { backendId }
365
376
  );
366
377
  }
@@ -372,7 +383,7 @@ var FileSyncAPI = class {
372
383
  */
373
384
  async listSyncRulesAsync() {
374
385
  return this.client.request(
375
- HAEXTENSION_METHODS.filesystem.sync.listSyncRules
386
+ HAEXTENSION_METHODS.filesync.listSyncRules
376
387
  );
377
388
  }
378
389
  /**
@@ -380,7 +391,7 @@ var FileSyncAPI = class {
380
391
  */
381
392
  async addSyncRuleAsync(options) {
382
393
  return this.client.request(
383
- HAEXTENSION_METHODS.filesystem.sync.addSyncRule,
394
+ HAEXTENSION_METHODS.filesync.addSyncRule,
384
395
  options
385
396
  );
386
397
  }
@@ -389,7 +400,7 @@ var FileSyncAPI = class {
389
400
  */
390
401
  async updateSyncRuleAsync(options) {
391
402
  return this.client.request(
392
- HAEXTENSION_METHODS.filesystem.sync.updateSyncRule,
403
+ HAEXTENSION_METHODS.filesync.updateSyncRule,
393
404
  options
394
405
  );
395
406
  }
@@ -397,7 +408,7 @@ var FileSyncAPI = class {
397
408
  * Remove a sync rule
398
409
  */
399
410
  async removeSyncRuleAsync(ruleId) {
400
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.removeSyncRule, {
411
+ await this.client.request(HAEXTENSION_METHODS.filesync.removeSyncRule, {
401
412
  ruleId
402
413
  });
403
414
  }
@@ -409,26 +420,26 @@ var FileSyncAPI = class {
409
420
  */
410
421
  async getSyncStatusAsync() {
411
422
  return this.client.request(
412
- HAEXTENSION_METHODS.filesystem.sync.getSyncStatus
423
+ HAEXTENSION_METHODS.filesync.getSyncStatus
413
424
  );
414
425
  }
415
426
  /**
416
427
  * Trigger a manual sync
417
428
  */
418
429
  async triggerSyncAsync() {
419
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.triggerSync);
430
+ await this.client.request(HAEXTENSION_METHODS.filesync.triggerSync);
420
431
  }
421
432
  /**
422
433
  * Pause syncing
423
434
  */
424
435
  async pauseSyncAsync() {
425
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.pauseSync);
436
+ await this.client.request(HAEXTENSION_METHODS.filesync.pauseSync);
426
437
  }
427
438
  /**
428
439
  * Resume syncing
429
440
  */
430
441
  async resumeSyncAsync() {
431
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.resumeSync);
442
+ await this.client.request(HAEXTENSION_METHODS.filesync.resumeSync);
432
443
  }
433
444
  // --------------------------------------------------------------------------
434
445
  // Conflict Resolution
@@ -437,7 +448,7 @@ var FileSyncAPI = class {
437
448
  * Resolve a file conflict
438
449
  */
439
450
  async resolveConflictAsync(fileId, resolution) {
440
- await this.client.request(HAEXTENSION_METHODS.filesystem.sync.resolveConflict, {
451
+ await this.client.request(HAEXTENSION_METHODS.filesync.resolveConflict, {
441
452
  fileId,
442
453
  resolution
443
454
  });
@@ -450,9 +461,91 @@ var FileSyncAPI = class {
450
461
  */
451
462
  async selectFolderAsync() {
452
463
  return this.client.request(
453
- HAEXTENSION_METHODS.filesystem.sync.selectFolder
464
+ HAEXTENSION_METHODS.filesync.selectFolder
465
+ );
466
+ }
467
+ // --------------------------------------------------------------------------
468
+ // Sync Queue
469
+ // --------------------------------------------------------------------------
470
+ /**
471
+ * Add files to the sync queue
472
+ */
473
+ async addToQueueAsync(options) {
474
+ return this.client.request(
475
+ HAEXTENSION_METHODS.filesync.addToQueue,
476
+ options
477
+ );
478
+ }
479
+ /**
480
+ * Get queue entries for the current device
481
+ */
482
+ async getQueueAsync(options) {
483
+ return this.client.request(
484
+ HAEXTENSION_METHODS.filesync.getQueue,
485
+ options
486
+ );
487
+ }
488
+ /**
489
+ * Get aggregated queue summary for the current device
490
+ */
491
+ async getQueueSummaryAsync() {
492
+ return this.client.request(
493
+ HAEXTENSION_METHODS.filesync.getQueueSummary
454
494
  );
455
495
  }
496
+ /**
497
+ * Mark a queue entry as started (in_progress)
498
+ */
499
+ async startQueueEntryAsync(entryId) {
500
+ await this.client.request(HAEXTENSION_METHODS.filesync.startQueueEntry, {
501
+ entryId
502
+ });
503
+ }
504
+ /**
505
+ * Mark a queue entry as completed
506
+ */
507
+ async completeQueueEntryAsync(entryId) {
508
+ await this.client.request(HAEXTENSION_METHODS.filesync.completeQueueEntry, {
509
+ entryId
510
+ });
511
+ }
512
+ /**
513
+ * Mark a queue entry as failed
514
+ */
515
+ async failQueueEntryAsync(entryId, errorMessage) {
516
+ await this.client.request(HAEXTENSION_METHODS.filesync.failQueueEntry, {
517
+ entryId,
518
+ errorMessage
519
+ });
520
+ }
521
+ /**
522
+ * Retry all failed queue entries (reset to pending)
523
+ */
524
+ async retryFailedQueueAsync() {
525
+ await this.client.request(HAEXTENSION_METHODS.filesync.retryFailedQueue);
526
+ }
527
+ /**
528
+ * Remove a queue entry
529
+ */
530
+ async removeQueueEntryAsync(entryId) {
531
+ await this.client.request(HAEXTENSION_METHODS.filesync.removeQueueEntry, {
532
+ entryId
533
+ });
534
+ }
535
+ /**
536
+ * Clear all queue entries for a sync rule
537
+ */
538
+ async clearQueueAsync(ruleId) {
539
+ await this.client.request(HAEXTENSION_METHODS.filesync.clearQueue, {
540
+ ruleId
541
+ });
542
+ }
543
+ /**
544
+ * Reset in_progress entries to pending (for recovery after crash)
545
+ */
546
+ async recoverQueueAsync() {
547
+ await this.client.request(HAEXTENSION_METHODS.filesync.recoverQueue);
548
+ }
456
549
  };
457
550
 
458
551
  // src/api/filesystem.ts
@@ -1012,7 +1105,18 @@ var TAURI_COMMANDS = {
1012
1105
  resolveConflict: "webview_filesync_resolve_conflict",
1013
1106
  // UI Helpers (selectFolder doesn't need extension info)
1014
1107
  selectFolder: "filesync_select_folder",
1015
- scanLocal: "webview_filesync_scan_local"
1108
+ scanLocal: "webview_filesync_scan_local",
1109
+ // Sync Queue
1110
+ addToQueue: "webview_filesync_add_to_queue",
1111
+ getQueue: "webview_filesync_get_queue",
1112
+ getQueueSummary: "webview_filesync_get_queue_summary",
1113
+ startQueueEntry: "webview_filesync_start_queue_entry",
1114
+ completeQueueEntry: "webview_filesync_complete_queue_entry",
1115
+ failQueueEntry: "webview_filesync_fail_queue_entry",
1116
+ retryFailedQueue: "webview_filesync_retry_failed_queue",
1117
+ removeQueueEntry: "webview_filesync_remove_queue_entry",
1118
+ clearQueue: "webview_filesync_clear_queue",
1119
+ recoverQueue: "webview_filesync_recover_queue"
1016
1120
  }
1017
1121
  };
1018
1122
 
@@ -1128,115 +1232,158 @@ var filesyncHandlers = {
1128
1232
  // ==========================================================================
1129
1233
  // Spaces
1130
1234
  // ==========================================================================
1131
- [HAEXTENSION_METHODS.filesystem.sync.listSpaces]: {
1235
+ [HAEXTENSION_METHODS.filesync.listSpaces]: {
1132
1236
  command: TAURI_COMMANDS.filesync.listSpaces,
1133
1237
  args: () => ({})
1134
1238
  },
1135
- [HAEXTENSION_METHODS.filesystem.sync.createSpace]: {
1239
+ [HAEXTENSION_METHODS.filesync.createSpace]: {
1136
1240
  command: TAURI_COMMANDS.filesync.createSpace,
1137
1241
  args: (p) => ({ request: p })
1138
1242
  },
1139
- [HAEXTENSION_METHODS.filesystem.sync.deleteSpace]: {
1243
+ [HAEXTENSION_METHODS.filesync.deleteSpace]: {
1140
1244
  command: TAURI_COMMANDS.filesync.deleteSpace,
1141
1245
  args: (p) => ({ spaceId: p.spaceId })
1142
1246
  },
1143
1247
  // ==========================================================================
1144
1248
  // Files
1145
1249
  // ==========================================================================
1146
- [HAEXTENSION_METHODS.filesystem.sync.listFiles]: {
1250
+ [HAEXTENSION_METHODS.filesync.listFiles]: {
1147
1251
  command: TAURI_COMMANDS.filesync.listFiles,
1148
1252
  args: (p) => ({ request: p })
1149
1253
  },
1150
- [HAEXTENSION_METHODS.filesystem.sync.getFile]: {
1254
+ [HAEXTENSION_METHODS.filesync.getFile]: {
1151
1255
  command: TAURI_COMMANDS.filesync.getFile,
1152
1256
  args: (p) => ({ fileId: p.fileId })
1153
1257
  },
1154
- [HAEXTENSION_METHODS.filesystem.sync.uploadFile]: {
1258
+ [HAEXTENSION_METHODS.filesync.uploadFile]: {
1155
1259
  command: TAURI_COMMANDS.filesync.uploadFile,
1156
1260
  args: (p) => ({ request: p })
1157
1261
  },
1158
- [HAEXTENSION_METHODS.filesystem.sync.downloadFile]: {
1262
+ [HAEXTENSION_METHODS.filesync.downloadFile]: {
1159
1263
  command: TAURI_COMMANDS.filesync.downloadFile,
1160
1264
  args: (p) => ({ request: p })
1161
1265
  },
1162
- [HAEXTENSION_METHODS.filesystem.sync.deleteFile]: {
1266
+ [HAEXTENSION_METHODS.filesync.deleteFile]: {
1163
1267
  command: TAURI_COMMANDS.filesync.deleteFile,
1164
1268
  args: (p) => ({ fileId: p.fileId })
1165
1269
  },
1166
1270
  // ==========================================================================
1167
1271
  // Backends
1168
1272
  // ==========================================================================
1169
- [HAEXTENSION_METHODS.filesystem.sync.listBackends]: {
1273
+ [HAEXTENSION_METHODS.filesync.listBackends]: {
1170
1274
  command: TAURI_COMMANDS.filesync.listBackends,
1171
1275
  args: () => ({})
1172
1276
  },
1173
- [HAEXTENSION_METHODS.filesystem.sync.addBackend]: {
1277
+ [HAEXTENSION_METHODS.filesync.addBackend]: {
1174
1278
  command: TAURI_COMMANDS.filesync.addBackend,
1175
1279
  args: (p) => ({ request: p })
1176
1280
  },
1177
- [HAEXTENSION_METHODS.filesystem.sync.removeBackend]: {
1281
+ [HAEXTENSION_METHODS.filesync.removeBackend]: {
1178
1282
  command: TAURI_COMMANDS.filesync.removeBackend,
1179
1283
  args: (p) => ({ backendId: p.backendId })
1180
1284
  },
1181
- [HAEXTENSION_METHODS.filesystem.sync.testBackend]: {
1285
+ [HAEXTENSION_METHODS.filesync.testBackend]: {
1182
1286
  command: TAURI_COMMANDS.filesync.testBackend,
1183
1287
  args: (p) => ({ backendId: p.backendId })
1184
1288
  },
1185
1289
  // ==========================================================================
1186
1290
  // Sync Rules
1187
1291
  // ==========================================================================
1188
- [HAEXTENSION_METHODS.filesystem.sync.listSyncRules]: {
1292
+ [HAEXTENSION_METHODS.filesync.listSyncRules]: {
1189
1293
  command: TAURI_COMMANDS.filesync.listSyncRules,
1190
1294
  args: () => ({})
1191
1295
  },
1192
- [HAEXTENSION_METHODS.filesystem.sync.addSyncRule]: {
1296
+ [HAEXTENSION_METHODS.filesync.addSyncRule]: {
1193
1297
  command: TAURI_COMMANDS.filesync.addSyncRule,
1194
1298
  args: (p) => ({ request: p })
1195
1299
  },
1196
- [HAEXTENSION_METHODS.filesystem.sync.updateSyncRule]: {
1300
+ [HAEXTENSION_METHODS.filesync.updateSyncRule]: {
1197
1301
  command: TAURI_COMMANDS.filesync.updateSyncRule,
1198
1302
  args: (p) => ({ request: p })
1199
1303
  },
1200
- [HAEXTENSION_METHODS.filesystem.sync.removeSyncRule]: {
1304
+ [HAEXTENSION_METHODS.filesync.removeSyncRule]: {
1201
1305
  command: TAURI_COMMANDS.filesync.removeSyncRule,
1202
1306
  args: (p) => ({ ruleId: p.ruleId })
1203
1307
  },
1204
1308
  // ==========================================================================
1205
1309
  // Sync Operations
1206
1310
  // ==========================================================================
1207
- [HAEXTENSION_METHODS.filesystem.sync.getSyncStatus]: {
1311
+ [HAEXTENSION_METHODS.filesync.getSyncStatus]: {
1208
1312
  command: TAURI_COMMANDS.filesync.getSyncStatus,
1209
1313
  args: () => ({})
1210
1314
  },
1211
- [HAEXTENSION_METHODS.filesystem.sync.triggerSync]: {
1315
+ [HAEXTENSION_METHODS.filesync.triggerSync]: {
1212
1316
  command: TAURI_COMMANDS.filesync.triggerSync,
1213
1317
  args: () => ({})
1214
1318
  },
1215
- [HAEXTENSION_METHODS.filesystem.sync.pauseSync]: {
1319
+ [HAEXTENSION_METHODS.filesync.pauseSync]: {
1216
1320
  command: TAURI_COMMANDS.filesync.pauseSync,
1217
1321
  args: () => ({})
1218
1322
  },
1219
- [HAEXTENSION_METHODS.filesystem.sync.resumeSync]: {
1323
+ [HAEXTENSION_METHODS.filesync.resumeSync]: {
1220
1324
  command: TAURI_COMMANDS.filesync.resumeSync,
1221
1325
  args: () => ({})
1222
1326
  },
1223
1327
  // ==========================================================================
1224
1328
  // Conflict Resolution
1225
1329
  // ==========================================================================
1226
- [HAEXTENSION_METHODS.filesystem.sync.resolveConflict]: {
1330
+ [HAEXTENSION_METHODS.filesync.resolveConflict]: {
1227
1331
  command: TAURI_COMMANDS.filesync.resolveConflict,
1228
1332
  args: (p) => ({ request: p })
1229
1333
  },
1230
1334
  // ==========================================================================
1231
1335
  // UI Helpers
1232
1336
  // ==========================================================================
1233
- [HAEXTENSION_METHODS.filesystem.sync.selectFolder]: {
1337
+ [HAEXTENSION_METHODS.filesync.selectFolder]: {
1234
1338
  command: TAURI_COMMANDS.filesync.selectFolder,
1235
1339
  args: () => ({})
1236
1340
  },
1237
- [HAEXTENSION_METHODS.filesystem.sync.scanLocal]: {
1341
+ [HAEXTENSION_METHODS.filesync.scanLocal]: {
1238
1342
  command: TAURI_COMMANDS.filesync.scanLocal,
1239
1343
  args: (p) => ({ request: p })
1344
+ },
1345
+ // ==========================================================================
1346
+ // Sync Queue
1347
+ // ==========================================================================
1348
+ [HAEXTENSION_METHODS.filesync.addToQueue]: {
1349
+ command: TAURI_COMMANDS.filesync.addToQueue,
1350
+ args: (p) => ({ request: p })
1351
+ },
1352
+ [HAEXTENSION_METHODS.filesync.getQueue]: {
1353
+ command: TAURI_COMMANDS.filesync.getQueue,
1354
+ args: (p) => ({ request: p ?? {} })
1355
+ },
1356
+ [HAEXTENSION_METHODS.filesync.getQueueSummary]: {
1357
+ command: TAURI_COMMANDS.filesync.getQueueSummary,
1358
+ args: () => ({})
1359
+ },
1360
+ [HAEXTENSION_METHODS.filesync.startQueueEntry]: {
1361
+ command: TAURI_COMMANDS.filesync.startQueueEntry,
1362
+ args: (p) => ({ entryId: p.entryId })
1363
+ },
1364
+ [HAEXTENSION_METHODS.filesync.completeQueueEntry]: {
1365
+ command: TAURI_COMMANDS.filesync.completeQueueEntry,
1366
+ args: (p) => ({ entryId: p.entryId })
1367
+ },
1368
+ [HAEXTENSION_METHODS.filesync.failQueueEntry]: {
1369
+ command: TAURI_COMMANDS.filesync.failQueueEntry,
1370
+ args: (p) => ({ entryId: p.entryId, errorMessage: p.errorMessage })
1371
+ },
1372
+ [HAEXTENSION_METHODS.filesync.retryFailedQueue]: {
1373
+ command: TAURI_COMMANDS.filesync.retryFailedQueue,
1374
+ args: () => ({})
1375
+ },
1376
+ [HAEXTENSION_METHODS.filesync.removeQueueEntry]: {
1377
+ command: TAURI_COMMANDS.filesync.removeQueueEntry,
1378
+ args: (p) => ({ entryId: p.entryId })
1379
+ },
1380
+ [HAEXTENSION_METHODS.filesync.clearQueue]: {
1381
+ command: TAURI_COMMANDS.filesync.clearQueue,
1382
+ args: (p) => ({ ruleId: p.ruleId })
1383
+ },
1384
+ [HAEXTENSION_METHODS.filesync.recoverQueue]: {
1385
+ command: TAURI_COMMANDS.filesync.recoverQueue,
1386
+ args: () => ({})
1240
1387
  }
1241
1388
  };
1242
1389