@haex-space/vault-sdk 2.5.58 → 2.5.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/react.mjs CHANGED
@@ -384,61 +384,102 @@ var HaexVaultSdkError = class extends Error {
384
384
  }
385
385
  };
386
386
 
387
- // src/methods.ts
388
- var HAEXTENSION_METHODS = {
389
- context: {
390
- get: "haextension:context:get"
391
- },
392
- database: {
393
- query: "haextension:database:query",
394
- execute: "haextension:database:execute",
395
- transaction: "haextension:database:transaction",
396
- registerMigrations: "haextension:database:register-migrations"
397
- },
398
- filesystem: {
399
- saveFile: "haextension:filesystem:save-file",
400
- openFile: "haextension:filesystem:open-file",
401
- showImage: "haextension:filesystem:show-image",
402
- // Generic FS operations (Phase 2)
403
- readFile: "haextension:filesystem:read-file",
404
- writeFile: "haextension:filesystem:write-file",
405
- readDir: "haextension:filesystem:read-dir",
406
- mkdir: "haextension:filesystem:mkdir",
407
- remove: "haextension:filesystem:remove",
408
- exists: "haextension:filesystem:exists",
409
- stat: "haextension:filesystem:stat",
410
- selectFolder: "haextension:filesystem:select-folder",
411
- selectFile: "haextension:filesystem:select-file",
412
- rename: "haextension:filesystem:rename",
413
- copy: "haextension:filesystem:copy"
414
- },
415
- storage: {
416
- getItem: "haextension:storage:get-item",
417
- setItem: "haextension:storage:set-item",
418
- removeItem: "haextension:storage:remove-item",
419
- clear: "haextension:storage:clear",
420
- keys: "haextension:storage:keys"
421
- },
422
- // Remote Storage API (S3, WebDAV, FTP, etc.)
423
- remoteStorage: {
424
- // Backend Management
425
- listBackends: "haextension:remote-storage:list-backends",
426
- addBackend: "haextension:remote-storage:add-backend",
427
- updateBackend: "haextension:remote-storage:update-backend",
428
- removeBackend: "haextension:remote-storage:remove-backend",
429
- testBackend: "haextension:remote-storage:test-backend",
430
- // Storage Operations
431
- upload: "haextension:remote-storage:upload",
432
- download: "haextension:remote-storage:download",
433
- delete: "haextension:remote-storage:delete",
434
- list: "haextension:remote-storage:list"
435
- },
436
- web: {
437
- fetch: "haextension:web:fetch"
438
- },
439
- application: {
440
- open: "haextension:application:open"
441
- }
387
+ // src/commands/database.ts
388
+ var DATABASE_COMMANDS = {
389
+ /** Execute a SELECT query */
390
+ query: "extension_database_query",
391
+ /** Execute INSERT/UPDATE/DELETE statement */
392
+ execute: "extension_database_execute",
393
+ /** Execute multiple statements in a transaction */
394
+ transaction: "extension_database_transaction",
395
+ /** Register and apply database migrations */
396
+ registerMigrations: "extension_database_register_migrations"
397
+ };
398
+
399
+ // src/commands/web.ts
400
+ var WEB_COMMANDS = {
401
+ /** Open URL in external browser */
402
+ open: "extension_web_open",
403
+ /** Make HTTP request (bypasses CORS) */
404
+ fetch: "extension_web_fetch"
405
+ };
406
+
407
+ // src/commands/webStorage.ts
408
+ var WEB_STORAGE_COMMANDS = {
409
+ /** Get item from storage */
410
+ getItem: "extension_web_storage_get_item",
411
+ /** Set item in storage */
412
+ setItem: "extension_web_storage_set_item",
413
+ /** Remove item from storage */
414
+ removeItem: "extension_web_storage_remove_item",
415
+ /** Clear all storage */
416
+ clear: "extension_web_storage_clear",
417
+ /** Get all storage keys */
418
+ keys: "extension_web_storage_keys"
419
+ };
420
+
421
+ // src/commands/filesystem.ts
422
+ var FILESYSTEM_COMMANDS = {
423
+ // Dialog commands
424
+ /** Show save file dialog */
425
+ saveFile: "extension_filesystem_save_file",
426
+ /** Show open file dialog */
427
+ openFile: "extension_filesystem_open_file",
428
+ /** Show image in native viewer */
429
+ showImage: "extension_filesystem_show_image",
430
+ // Generic filesystem operations
431
+ /** Read file contents as base64 */
432
+ readFile: "extension_filesystem_read_file",
433
+ /** Write base64 data to file */
434
+ writeFile: "extension_filesystem_write_file",
435
+ /** List directory contents */
436
+ readDir: "extension_filesystem_read_dir",
437
+ /** Create directory */
438
+ mkdir: "extension_filesystem_mkdir",
439
+ /** Remove file or directory */
440
+ remove: "extension_filesystem_remove",
441
+ /** Check if path exists */
442
+ exists: "extension_filesystem_exists",
443
+ /** Get file/directory metadata */
444
+ stat: "extension_filesystem_stat",
445
+ /** Show folder selection dialog */
446
+ selectFolder: "extension_filesystem_select_folder",
447
+ /** Show file selection dialog */
448
+ selectFile: "extension_filesystem_select_file",
449
+ /** Rename file or directory */
450
+ rename: "extension_filesystem_rename",
451
+ /** Copy file or directory */
452
+ copy: "extension_filesystem_copy"
453
+ };
454
+
455
+ // src/commands/extension.ts
456
+ var EXTENSION_COMMANDS = {
457
+ /** Get application context (theme, locale, etc.) */
458
+ getContext: "extension_get_context"
459
+ };
460
+
461
+ // src/commands/remoteStorage.ts
462
+ var REMOTE_STORAGE_COMMANDS = {
463
+ // Backend Management
464
+ /** List all storage backends */
465
+ listBackends: "extension_remote_storage_list_backends",
466
+ /** Add a new storage backend */
467
+ addBackend: "extension_remote_storage_add_backend",
468
+ /** Update storage backend configuration */
469
+ updateBackend: "extension_remote_storage_update_backend",
470
+ /** Remove a storage backend */
471
+ removeBackend: "extension_remote_storage_remove_backend",
472
+ /** Test storage backend connection */
473
+ testBackend: "extension_remote_storage_test_backend",
474
+ // Storage Operations
475
+ /** Upload data to storage backend */
476
+ upload: "extension_remote_storage_upload",
477
+ /** Download data from storage backend */
478
+ download: "extension_remote_storage_download",
479
+ /** Delete object from storage backend */
480
+ delete: "extension_remote_storage_delete",
481
+ /** List objects in storage backend */
482
+ list: "extension_remote_storage_list"
442
483
  };
443
484
 
444
485
  // src/api/storage.ts
@@ -447,19 +488,19 @@ var StorageAPI = class {
447
488
  this.client = client;
448
489
  }
449
490
  async getItem(key) {
450
- return this.client.request(HAEXTENSION_METHODS.storage.getItem, { key });
491
+ return this.client.request(WEB_STORAGE_COMMANDS.getItem, { key });
451
492
  }
452
493
  async setItem(key, value) {
453
- await this.client.request(HAEXTENSION_METHODS.storage.setItem, { key, value });
494
+ await this.client.request(WEB_STORAGE_COMMANDS.setItem, { key, value });
454
495
  }
455
496
  async removeItem(key) {
456
- await this.client.request(HAEXTENSION_METHODS.storage.removeItem, { key });
497
+ await this.client.request(WEB_STORAGE_COMMANDS.removeItem, { key });
457
498
  }
458
499
  async clear() {
459
- await this.client.request(HAEXTENSION_METHODS.storage.clear);
500
+ await this.client.request(WEB_STORAGE_COMMANDS.clear);
460
501
  }
461
502
  async keys() {
462
- return this.client.request(HAEXTENSION_METHODS.storage.keys);
503
+ return this.client.request(WEB_STORAGE_COMMANDS.keys);
463
504
  }
464
505
  };
465
506
 
@@ -470,7 +511,7 @@ var DatabaseAPI = class {
470
511
  }
471
512
  async query(query, params) {
472
513
  const result = await this.client.request(
473
- HAEXTENSION_METHODS.database.query,
514
+ DATABASE_COMMANDS.query,
474
515
  {
475
516
  query,
476
517
  params: params || []
@@ -483,13 +524,13 @@ var DatabaseAPI = class {
483
524
  return rows.length > 0 ? rows[0] ?? null : null;
484
525
  }
485
526
  async execute(query, params) {
486
- return this.client.request(HAEXTENSION_METHODS.database.execute, {
527
+ return this.client.request(DATABASE_COMMANDS.execute, {
487
528
  query,
488
529
  params: params || []
489
530
  });
490
531
  }
491
532
  async transaction(statements) {
492
- await this.client.request(HAEXTENSION_METHODS.database.transaction, {
533
+ await this.client.request(DATABASE_COMMANDS.transaction, {
493
534
  statements
494
535
  });
495
536
  }
@@ -517,7 +558,7 @@ var DatabaseAPI = class {
517
558
  */
518
559
  async registerMigrationsAsync(extensionVersion, migrations) {
519
560
  return this.client.request(
520
- HAEXTENSION_METHODS.database.registerMigrations,
561
+ DATABASE_COMMANDS.registerMigrations,
521
562
  {
522
563
  extensionVersion,
523
564
  migrations
@@ -597,7 +638,7 @@ var FilesystemAPI = class {
597
638
  */
598
639
  async saveFileAsync(data, options = {}) {
599
640
  const result = await this.client.request(
600
- HAEXTENSION_METHODS.filesystem.saveFile,
641
+ FILESYSTEM_COMMANDS.saveFile,
601
642
  {
602
643
  data: Array.from(data),
603
644
  // Convert Uint8Array to regular array for postMessage
@@ -616,7 +657,7 @@ var FilesystemAPI = class {
616
657
  */
617
658
  async openFileAsync(data, options) {
618
659
  const result = await this.client.request(
619
- HAEXTENSION_METHODS.filesystem.openFile,
660
+ FILESYSTEM_COMMANDS.openFile,
620
661
  {
621
662
  data: Array.from(data),
622
663
  // Convert Uint8Array to regular array for postMessage
@@ -635,7 +676,7 @@ var FilesystemAPI = class {
635
676
  */
636
677
  async showImageAsync(options) {
637
678
  const result = await this.client.request(
638
- HAEXTENSION_METHODS.filesystem.showImage,
679
+ FILESYSTEM_COMMANDS.showImage,
639
680
  {
640
681
  dataUrl: options.dataUrl
641
682
  }
@@ -652,7 +693,7 @@ var FilesystemAPI = class {
652
693
  */
653
694
  async readFile(path) {
654
695
  const base64 = await this.client.request(
655
- HAEXTENSION_METHODS.filesystem.readFile,
696
+ FILESYSTEM_COMMANDS.readFile,
656
697
  { path }
657
698
  );
658
699
  return base64ToArrayBuffer(base64);
@@ -665,7 +706,7 @@ var FilesystemAPI = class {
665
706
  async writeFile(path, data) {
666
707
  const base64 = arrayBufferToBase64(data);
667
708
  await this.client.request(
668
- HAEXTENSION_METHODS.filesystem.writeFile,
709
+ FILESYSTEM_COMMANDS.writeFile,
669
710
  { path, data: base64 }
670
711
  );
671
712
  }
@@ -676,7 +717,7 @@ var FilesystemAPI = class {
676
717
  */
677
718
  async readDir(path) {
678
719
  return this.client.request(
679
- HAEXTENSION_METHODS.filesystem.readDir,
720
+ FILESYSTEM_COMMANDS.readDir,
680
721
  { path }
681
722
  );
682
723
  }
@@ -686,7 +727,7 @@ var FilesystemAPI = class {
686
727
  */
687
728
  async mkdir(path) {
688
729
  await this.client.request(
689
- HAEXTENSION_METHODS.filesystem.mkdir,
730
+ FILESYSTEM_COMMANDS.mkdir,
690
731
  { path }
691
732
  );
692
733
  }
@@ -697,7 +738,7 @@ var FilesystemAPI = class {
697
738
  */
698
739
  async remove(path, recursive = false) {
699
740
  await this.client.request(
700
- HAEXTENSION_METHODS.filesystem.remove,
741
+ FILESYSTEM_COMMANDS.remove,
701
742
  { path, recursive }
702
743
  );
703
744
  }
@@ -708,7 +749,7 @@ var FilesystemAPI = class {
708
749
  */
709
750
  async exists(path) {
710
751
  return this.client.request(
711
- HAEXTENSION_METHODS.filesystem.exists,
752
+ FILESYSTEM_COMMANDS.exists,
712
753
  { path }
713
754
  );
714
755
  }
@@ -719,7 +760,7 @@ var FilesystemAPI = class {
719
760
  */
720
761
  async stat(path) {
721
762
  return this.client.request(
722
- HAEXTENSION_METHODS.filesystem.stat,
763
+ FILESYSTEM_COMMANDS.stat,
723
764
  { path }
724
765
  );
725
766
  }
@@ -730,7 +771,7 @@ var FilesystemAPI = class {
730
771
  */
731
772
  async selectFolder(options = {}) {
732
773
  return this.client.request(
733
- HAEXTENSION_METHODS.filesystem.selectFolder,
774
+ FILESYSTEM_COMMANDS.selectFolder,
734
775
  options
735
776
  );
736
777
  }
@@ -741,7 +782,7 @@ var FilesystemAPI = class {
741
782
  */
742
783
  async selectFile(options = {}) {
743
784
  return this.client.request(
744
- HAEXTENSION_METHODS.filesystem.selectFile,
785
+ FILESYSTEM_COMMANDS.selectFile,
745
786
  options
746
787
  );
747
788
  }
@@ -752,7 +793,7 @@ var FilesystemAPI = class {
752
793
  */
753
794
  async rename(from, to) {
754
795
  await this.client.request(
755
- HAEXTENSION_METHODS.filesystem.rename,
796
+ FILESYSTEM_COMMANDS.rename,
756
797
  { from, to }
757
798
  );
758
799
  }
@@ -763,7 +804,7 @@ var FilesystemAPI = class {
763
804
  */
764
805
  async copy(from, to) {
765
806
  await this.client.request(
766
- HAEXTENSION_METHODS.filesystem.copy,
807
+ FILESYSTEM_COMMANDS.copy,
767
808
  { from, to }
768
809
  );
769
810
  }
@@ -791,7 +832,7 @@ var WebAPI = class {
791
832
  bodyParam = options.body;
792
833
  }
793
834
  }
794
- const response = await this.client.request(HAEXTENSION_METHODS.web.fetch, {
835
+ const response = await this.client.request(WEB_COMMANDS.fetch, {
795
836
  url,
796
837
  method: options.method || "GET",
797
838
  headers: options.headers,
@@ -834,10 +875,7 @@ var WebAPI = class {
834
875
  * @param url The URL to open
835
876
  */
836
877
  async openAsync(url) {
837
- await this.client.request(HAEXTENSION_METHODS.application.open, {
838
- application: "browser",
839
- url
840
- });
878
+ await this.client.request(WEB_COMMANDS.open, { url });
841
879
  }
842
880
  arrayBufferToBase64(buffer) {
843
881
  const bytes = new Uint8Array(buffer);
@@ -950,7 +988,7 @@ var RemoteStorageAPI = class {
950
988
  */
951
989
  async upload(backendId, key, data) {
952
990
  const base64 = arrayBufferToBase64(data);
953
- await this.client.request(HAEXTENSION_METHODS.remoteStorage.upload, {
991
+ await this.client.request(REMOTE_STORAGE_COMMANDS.upload, {
954
992
  backendId,
955
993
  key,
956
994
  data: base64
@@ -964,7 +1002,7 @@ var RemoteStorageAPI = class {
964
1002
  */
965
1003
  async download(backendId, key) {
966
1004
  const base64 = await this.client.request(
967
- HAEXTENSION_METHODS.remoteStorage.download,
1005
+ REMOTE_STORAGE_COMMANDS.download,
968
1006
  { backendId, key }
969
1007
  );
970
1008
  return base64ToArrayBuffer(base64);
@@ -975,7 +1013,7 @@ var RemoteStorageAPI = class {
975
1013
  * @param key - Object key to delete
976
1014
  */
977
1015
  async delete(backendId, key) {
978
- await this.client.request(HAEXTENSION_METHODS.remoteStorage.delete, {
1016
+ await this.client.request(REMOTE_STORAGE_COMMANDS.delete, {
979
1017
  backendId,
980
1018
  key
981
1019
  });
@@ -988,7 +1026,7 @@ var RemoteStorageAPI = class {
988
1026
  */
989
1027
  async list(backendId, prefix) {
990
1028
  return this.client.request(
991
- HAEXTENSION_METHODS.remoteStorage.list,
1029
+ REMOTE_STORAGE_COMMANDS.list,
992
1030
  { backendId, prefix }
993
1031
  );
994
1032
  }
@@ -1002,7 +1040,7 @@ var BackendManagement = class {
1002
1040
  */
1003
1041
  async list() {
1004
1042
  return this.client.request(
1005
- HAEXTENSION_METHODS.remoteStorage.listBackends
1043
+ REMOTE_STORAGE_COMMANDS.listBackends
1006
1044
  );
1007
1045
  }
1008
1046
  /**
@@ -1012,7 +1050,7 @@ var BackendManagement = class {
1012
1050
  */
1013
1051
  async add(request) {
1014
1052
  return this.client.request(
1015
- HAEXTENSION_METHODS.remoteStorage.addBackend,
1053
+ REMOTE_STORAGE_COMMANDS.addBackend,
1016
1054
  request
1017
1055
  );
1018
1056
  }
@@ -1024,7 +1062,7 @@ var BackendManagement = class {
1024
1062
  */
1025
1063
  async update(request) {
1026
1064
  return this.client.request(
1027
- HAEXTENSION_METHODS.remoteStorage.updateBackend,
1065
+ REMOTE_STORAGE_COMMANDS.updateBackend,
1028
1066
  request
1029
1067
  );
1030
1068
  }
@@ -1033,7 +1071,7 @@ var BackendManagement = class {
1033
1071
  * @param backendId - Backend ID to remove
1034
1072
  */
1035
1073
  async remove(backendId) {
1036
- await this.client.request(HAEXTENSION_METHODS.remoteStorage.removeBackend, {
1074
+ await this.client.request(REMOTE_STORAGE_COMMANDS.removeBackend, {
1037
1075
  backendId
1038
1076
  });
1039
1077
  }
@@ -1042,7 +1080,7 @@ var BackendManagement = class {
1042
1080
  * @param backendId - Backend ID to test
1043
1081
  */
1044
1082
  async test(backendId) {
1045
- await this.client.request(HAEXTENSION_METHODS.remoteStorage.testBackend, {
1083
+ await this.client.request(REMOTE_STORAGE_COMMANDS.testBackend, {
1046
1084
  backendId
1047
1085
  });
1048
1086
  }
@@ -1226,7 +1264,7 @@ async function initIframeMode(ctx, log, messageHandler, request) {
1226
1264
  log("Extension info loaded from manifest:", ctx.state.extensionInfo);
1227
1265
  }
1228
1266
  sendDebugInfo(ctx.config);
1229
- const context = await request(HAEXTENSION_METHODS.context.get);
1267
+ const context = await request(EXTENSION_COMMANDS.getContext);
1230
1268
  ctx.state.context = context;
1231
1269
  log("Application context received:", context);
1232
1270
  return { context };
@@ -1249,302 +1287,6 @@ postMessage error: ${e}`);
1249
1287
  }
1250
1288
  }
1251
1289
 
1252
- // src/commands.ts
1253
- var TAURI_COMMANDS = {
1254
- database: {
1255
- query: "webview_extension_db_query",
1256
- execute: "webview_extension_db_execute",
1257
- registerMigrations: "webview_extension_db_register_migrations"
1258
- },
1259
- permissions: {
1260
- checkWeb: "webview_extension_check_web_permission",
1261
- checkDatabase: "webview_extension_check_database_permission",
1262
- checkFilesystem: "webview_extension_check_filesystem_permission"
1263
- },
1264
- web: {
1265
- open: "webview_extension_web_open",
1266
- fetch: "webview_extension_web_request"
1267
- },
1268
- filesystem: {
1269
- saveFile: "webview_extension_fs_save_file",
1270
- openFile: "webview_extension_fs_open_file",
1271
- showImage: "webview_extension_fs_show_image",
1272
- // Generic filesystem operations (no webview_ prefix because they're global)
1273
- // Permission checks happen in the message handler layer
1274
- readFile: "filesystem_read_file",
1275
- writeFile: "filesystem_write_file",
1276
- readDir: "filesystem_read_dir",
1277
- mkdir: "filesystem_mkdir",
1278
- remove: "filesystem_remove",
1279
- exists: "filesystem_exists",
1280
- stat: "filesystem_stat",
1281
- selectFolder: "filesystem_select_folder",
1282
- selectFile: "filesystem_select_file",
1283
- rename: "filesystem_rename",
1284
- copy: "filesystem_copy"
1285
- },
1286
- external: {
1287
- // Response handling (called by extensions running in WebView)
1288
- respond: "webview_extension_external_respond"},
1289
- storage: {
1290
- // Backend Management (generic, shared by all extensions)
1291
- // These commands don't use webview_ prefix because storage backends are global,
1292
- // not extension-specific. All extensions share the same storage backends.
1293
- listBackends: "storage_list_backends",
1294
- addBackend: "storage_add_backend",
1295
- removeBackend: "storage_remove_backend",
1296
- testBackend: "storage_test_backend",
1297
- // Storage Operations
1298
- upload: "storage_upload",
1299
- download: "storage_download",
1300
- delete: "storage_delete",
1301
- list: "storage_list"
1302
- }};
1303
-
1304
- // src/transport/handlers/database.ts
1305
- var databaseHandlers = {
1306
- [HAEXTENSION_METHODS.database.query]: {
1307
- command: TAURI_COMMANDS.database.query,
1308
- args: (p) => ({
1309
- query: p.query,
1310
- params: p.params || []
1311
- })
1312
- },
1313
- [HAEXTENSION_METHODS.database.execute]: {
1314
- command: TAURI_COMMANDS.database.execute,
1315
- args: (p) => ({
1316
- query: p.query,
1317
- params: p.params || []
1318
- })
1319
- },
1320
- [HAEXTENSION_METHODS.database.registerMigrations]: {
1321
- command: TAURI_COMMANDS.database.registerMigrations,
1322
- args: (p) => ({
1323
- extensionVersion: p.extensionVersion,
1324
- migrations: p.migrations
1325
- })
1326
- }
1327
- };
1328
-
1329
- // src/transport/handlers/permissions.ts
1330
- var permissionsHandlers = {
1331
- "permissions.web.check": {
1332
- command: TAURI_COMMANDS.permissions.checkWeb,
1333
- args: (p) => ({
1334
- url: p.url
1335
- })
1336
- },
1337
- "permissions.database.check": {
1338
- command: TAURI_COMMANDS.permissions.checkDatabase,
1339
- args: (p) => ({
1340
- resource: p.resource,
1341
- operation: p.operation
1342
- })
1343
- },
1344
- "permissions.filesystem.check": {
1345
- command: TAURI_COMMANDS.permissions.checkFilesystem,
1346
- args: (p) => ({
1347
- path: p.path,
1348
- actionStr: p.action
1349
- })
1350
- }
1351
- };
1352
-
1353
- // src/transport/handlers/web.ts
1354
- var webHandlers = {
1355
- [HAEXTENSION_METHODS.application.open]: {
1356
- command: TAURI_COMMANDS.web.open,
1357
- args: (p) => ({
1358
- url: p.url
1359
- })
1360
- },
1361
- [HAEXTENSION_METHODS.web.fetch]: {
1362
- command: TAURI_COMMANDS.web.fetch,
1363
- args: (p) => ({
1364
- url: p.url,
1365
- method: p.method,
1366
- headers: p.headers,
1367
- body: p.body
1368
- })
1369
- }
1370
- };
1371
-
1372
- // src/transport/handlers/filesystem.ts
1373
- var filesystemHandlers = {
1374
- // Legacy extension-specific operations
1375
- [HAEXTENSION_METHODS.filesystem.saveFile]: {
1376
- command: TAURI_COMMANDS.filesystem.saveFile,
1377
- args: (p) => ({
1378
- data: p.data,
1379
- defaultPath: p.defaultPath,
1380
- title: p.title,
1381
- filters: p.filters
1382
- })
1383
- },
1384
- [HAEXTENSION_METHODS.filesystem.openFile]: {
1385
- command: TAURI_COMMANDS.filesystem.openFile,
1386
- args: (p) => ({
1387
- data: p.data,
1388
- fileName: p.fileName
1389
- })
1390
- },
1391
- [HAEXTENSION_METHODS.filesystem.showImage]: {
1392
- command: TAURI_COMMANDS.filesystem.showImage,
1393
- args: (p) => ({
1394
- dataUrl: p.dataUrl
1395
- })
1396
- },
1397
- // Generic filesystem operations
1398
- [HAEXTENSION_METHODS.filesystem.readFile]: {
1399
- command: TAURI_COMMANDS.filesystem.readFile,
1400
- args: (p) => ({ path: p.path })
1401
- },
1402
- [HAEXTENSION_METHODS.filesystem.writeFile]: {
1403
- command: TAURI_COMMANDS.filesystem.writeFile,
1404
- args: (p) => ({ path: p.path, data: p.data })
1405
- },
1406
- [HAEXTENSION_METHODS.filesystem.readDir]: {
1407
- command: TAURI_COMMANDS.filesystem.readDir,
1408
- args: (p) => ({ path: p.path })
1409
- },
1410
- [HAEXTENSION_METHODS.filesystem.mkdir]: {
1411
- command: TAURI_COMMANDS.filesystem.mkdir,
1412
- args: (p) => ({ path: p.path })
1413
- },
1414
- [HAEXTENSION_METHODS.filesystem.remove]: {
1415
- command: TAURI_COMMANDS.filesystem.remove,
1416
- args: (p) => ({ path: p.path })
1417
- },
1418
- [HAEXTENSION_METHODS.filesystem.exists]: {
1419
- command: TAURI_COMMANDS.filesystem.exists,
1420
- args: (p) => ({ path: p.path })
1421
- },
1422
- [HAEXTENSION_METHODS.filesystem.stat]: {
1423
- command: TAURI_COMMANDS.filesystem.stat,
1424
- args: (p) => ({ path: p.path })
1425
- },
1426
- [HAEXTENSION_METHODS.filesystem.selectFolder]: {
1427
- command: TAURI_COMMANDS.filesystem.selectFolder,
1428
- args: (p) => ({
1429
- title: p.title,
1430
- defaultPath: p.defaultPath
1431
- })
1432
- },
1433
- [HAEXTENSION_METHODS.filesystem.selectFile]: {
1434
- command: TAURI_COMMANDS.filesystem.selectFile,
1435
- args: (p) => ({
1436
- title: p.title,
1437
- defaultPath: p.defaultPath,
1438
- filters: p.filters
1439
- })
1440
- },
1441
- [HAEXTENSION_METHODS.filesystem.rename]: {
1442
- command: TAURI_COMMANDS.filesystem.rename,
1443
- args: (p) => ({ from: p.from, to: p.to })
1444
- },
1445
- [HAEXTENSION_METHODS.filesystem.copy]: {
1446
- command: TAURI_COMMANDS.filesystem.copy,
1447
- args: (p) => ({ from: p.from, to: p.to })
1448
- }
1449
- };
1450
-
1451
- // src/transport/handlers/external.ts
1452
- var externalHandlers = {
1453
- "external.respond": {
1454
- command: TAURI_COMMANDS.external.respond,
1455
- args: (p) => ({
1456
- requestId: p.requestId,
1457
- success: p.success,
1458
- data: p.data,
1459
- error: p.error
1460
- })
1461
- }
1462
- };
1463
-
1464
- // src/transport/handlers/remoteStorage.ts
1465
- var remoteStorageHandlers = {
1466
- // Backend Management
1467
- [HAEXTENSION_METHODS.remoteStorage.listBackends]: {
1468
- command: TAURI_COMMANDS.storage.listBackends,
1469
- args: (_p) => ({})
1470
- },
1471
- [HAEXTENSION_METHODS.remoteStorage.addBackend]: {
1472
- command: TAURI_COMMANDS.storage.addBackend,
1473
- args: (p) => ({
1474
- // Rust expects: request: AddStorageBackendRequest { name, type, config }
1475
- request: {
1476
- name: p.name,
1477
- type: p.type,
1478
- config: p.config
1479
- }
1480
- })
1481
- },
1482
- [HAEXTENSION_METHODS.remoteStorage.removeBackend]: {
1483
- command: TAURI_COMMANDS.storage.removeBackend,
1484
- args: (p) => ({
1485
- backendId: p.backendId
1486
- })
1487
- },
1488
- [HAEXTENSION_METHODS.remoteStorage.testBackend]: {
1489
- command: TAURI_COMMANDS.storage.testBackend,
1490
- args: (p) => ({
1491
- backendId: p.backendId
1492
- })
1493
- },
1494
- // Storage Operations
1495
- [HAEXTENSION_METHODS.remoteStorage.upload]: {
1496
- command: TAURI_COMMANDS.storage.upload,
1497
- args: (p) => ({
1498
- // Rust expects: request: StorageUploadRequest { backend_id, key, data }
1499
- request: {
1500
- backendId: p.backendId,
1501
- key: p.key,
1502
- data: p.data
1503
- }
1504
- })
1505
- },
1506
- [HAEXTENSION_METHODS.remoteStorage.download]: {
1507
- command: TAURI_COMMANDS.storage.download,
1508
- args: (p) => ({
1509
- // Rust expects: request: StorageDownloadRequest { backend_id, key }
1510
- request: {
1511
- backendId: p.backendId,
1512
- key: p.key
1513
- }
1514
- })
1515
- },
1516
- [HAEXTENSION_METHODS.remoteStorage.delete]: {
1517
- command: TAURI_COMMANDS.storage.delete,
1518
- args: (p) => ({
1519
- // Rust expects: request: StorageDeleteRequest { backend_id, key }
1520
- request: {
1521
- backendId: p.backendId,
1522
- key: p.key
1523
- }
1524
- })
1525
- },
1526
- [HAEXTENSION_METHODS.remoteStorage.list]: {
1527
- command: TAURI_COMMANDS.storage.list,
1528
- args: (p) => ({
1529
- // Rust expects: request: StorageListRequest { backend_id, prefix }
1530
- request: {
1531
- backendId: p.backendId,
1532
- prefix: p.prefix
1533
- }
1534
- })
1535
- }
1536
- };
1537
-
1538
- // src/transport/handlers/index.ts
1539
- var allHandlers = {
1540
- ...databaseHandlers,
1541
- ...permissionsHandlers,
1542
- ...webHandlers,
1543
- ...filesystemHandlers,
1544
- ...externalHandlers,
1545
- ...remoteStorageHandlers
1546
- };
1547
-
1548
1290
  // src/client/transport.ts
1549
1291
  function generateRequestId(counter) {
1550
1292
  return `req_${counter}`;
@@ -1578,27 +1320,15 @@ function sendPostMessage(method, params, requestId, config, extensionInfo, pendi
1578
1320
  window.parent.postMessage({ id: requestId, ...request }, targetOrigin);
1579
1321
  });
1580
1322
  }
1581
- async function sendInvoke(method, params, config, log) {
1323
+ async function sendInvoke(method, params, config, _log) {
1582
1324
  const { invoke } = window.__TAURI__.core;
1583
1325
  if (config.debug) {
1584
1326
  console.log("[SDK Debug] ========== Invoke Request ==========");
1585
- console.log("[SDK Debug] Method:", method);
1327
+ console.log("[SDK Debug] Command:", method);
1586
1328
  console.log("[SDK Debug] Params:", params);
1587
1329
  console.log("[SDK Debug] =======================================");
1588
1330
  }
1589
- const handler = allHandlers[method];
1590
- if (handler) {
1591
- const args = handler.args(params);
1592
- console.log("[SDK Debug] Handler found for method:", method);
1593
- console.log("[SDK Debug] Handler command:", handler.command);
1594
- console.log("[SDK Debug] Transformed args:", JSON.stringify(args, null, 2));
1595
- return invoke(handler.command, args);
1596
- }
1597
- throw new HaexVaultSdkError(
1598
- "METHOD_NOT_FOUND" /* METHOD_NOT_FOUND */,
1599
- "errors.method_not_found",
1600
- { method }
1601
- );
1331
+ return invoke(method, params);
1602
1332
  }
1603
1333
 
1604
1334
  // src/client/events.ts
@@ -1715,7 +1445,7 @@ function createDrizzleInstance(schema, extensionInfo, request, log) {
1715
1445
  try {
1716
1446
  if (method === "run" || method === "all") {
1717
1447
  const result2 = await request(
1718
- HAEXTENSION_METHODS.database.execute,
1448
+ DATABASE_COMMANDS.execute,
1719
1449
  {
1720
1450
  query: sql,
1721
1451
  params
@@ -1729,7 +1459,7 @@ function createDrizzleInstance(schema, extensionInfo, request, log) {
1729
1459
  }
1730
1460
  return result2;
1731
1461
  }
1732
- const result = await request(HAEXTENSION_METHODS.database.query, {
1462
+ const result = await request(DATABASE_COMMANDS.query, {
1733
1463
  query: sql,
1734
1464
  params
1735
1465
  });
@@ -1751,7 +1481,7 @@ function createDrizzleInstance(schema, extensionInfo, request, log) {
1751
1481
  }
1752
1482
  async function queryRaw(sql, params, request, debug) {
1753
1483
  const result = await request(
1754
- HAEXTENSION_METHODS.database.query,
1484
+ DATABASE_COMMANDS.query,
1755
1485
  { query: sql, params }
1756
1486
  );
1757
1487
  if (debug) {
@@ -1761,7 +1491,7 @@ async function queryRaw(sql, params, request, debug) {
1761
1491
  }
1762
1492
  async function executeRaw(sql, params, request) {
1763
1493
  const result = await request(
1764
- HAEXTENSION_METHODS.database.execute,
1494
+ DATABASE_COMMANDS.execute,
1765
1495
  { query: sql, params }
1766
1496
  );
1767
1497
  return {
@@ -1985,7 +1715,12 @@ var HaexVaultSdk = class {
1985
1715
  async request(method, params) {
1986
1716
  const resolvedParams = params ?? {};
1987
1717
  if (this.isNativeWindow && hasTauri()) {
1988
- return sendInvoke(method, resolvedParams, this.config, this.log.bind(this));
1718
+ const paramsWithCredentials = {
1719
+ ...resolvedParams,
1720
+ publicKey: this._extensionInfo?.publicKey,
1721
+ extensionName: this._extensionInfo?.name
1722
+ };
1723
+ return sendInvoke(method, paramsWithCredentials, this.config, this.log.bind(this));
1989
1724
  }
1990
1725
  const requestId = generateRequestId(++this.requestCounter);
1991
1726
  return sendPostMessage(method, resolvedParams, requestId, this.config, this._extensionInfo, this.pendingRequests);