@haex-space/vault-sdk 2.5.87 → 2.5.90
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/{client-Y1a7Vkgk.d.mts → client-DwGxAKzx.d.mts} +275 -1
- package/dist/{client-DGSamcol.d.ts → client-s83JV-k0.d.ts} +275 -1
- package/dist/index.d.mts +72 -3
- package/dist/index.d.ts +72 -3
- package/dist/index.js +321 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +320 -2
- package/dist/index.mjs.map +1 -1
- package/dist/react.d.mts +1 -1
- package/dist/react.d.ts +1 -1
- package/dist/react.js +317 -0
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +317 -0
- package/dist/react.mjs.map +1 -1
- package/dist/runtime/nuxt.plugin.client.d.mts +1 -1
- package/dist/runtime/nuxt.plugin.client.d.ts +1 -1
- package/dist/runtime/nuxt.plugin.client.js +317 -0
- package/dist/runtime/nuxt.plugin.client.js.map +1 -1
- package/dist/runtime/nuxt.plugin.client.mjs +317 -0
- package/dist/runtime/nuxt.plugin.client.mjs.map +1 -1
- package/dist/svelte.d.mts +1 -1
- package/dist/svelte.d.ts +1 -1
- package/dist/svelte.js +317 -0
- package/dist/svelte.js.map +1 -1
- package/dist/svelte.mjs +317 -0
- package/dist/svelte.mjs.map +1 -1
- package/dist/vue.d.mts +1 -1
- package/dist/vue.d.ts +1 -1
- package/dist/vue.js +317 -0
- package/dist/vue.js.map +1 -1
- package/dist/vue.mjs +317 -0
- package/dist/vue.mjs.map +1 -1
- package/package.json +1 -1
package/dist/svelte.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { H as HaexVaultSdk, S as StorageAPI } from './client-
|
|
1
|
+
import { H as HaexVaultSdk, S as StorageAPI } from './client-DwGxAKzx.mjs';
|
|
2
2
|
import * as drizzle_orm_sqlite_proxy from 'drizzle-orm/sqlite-proxy';
|
|
3
3
|
import { Readable } from 'svelte/store';
|
|
4
4
|
import { H as HaexHubConfig, a as ExtensionInfo, A as ApplicationContext } from './types-D4ft4_oG.mjs';
|
package/dist/svelte.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { H as HaexVaultSdk, S as StorageAPI } from './client-
|
|
1
|
+
import { H as HaexVaultSdk, S as StorageAPI } from './client-s83JV-k0.js';
|
|
2
2
|
import * as drizzle_orm_sqlite_proxy from 'drizzle-orm/sqlite-proxy';
|
|
3
3
|
import { Readable } from 'svelte/store';
|
|
4
4
|
import { H as HaexHubConfig, a as ExtensionInfo, A as ApplicationContext } from './types-D4ft4_oG.js';
|
package/dist/svelte.js
CHANGED
|
@@ -513,6 +513,52 @@ var REMOTE_STORAGE_COMMANDS = {
|
|
|
513
513
|
list: "extension_remote_storage_list"
|
|
514
514
|
};
|
|
515
515
|
|
|
516
|
+
// src/commands/localsend.ts
|
|
517
|
+
var LOCALSEND_COMMANDS = {
|
|
518
|
+
// Initialization
|
|
519
|
+
/** Initialize LocalSend (generate identity, etc.) */
|
|
520
|
+
init: "localsend_init",
|
|
521
|
+
/** Get our device info */
|
|
522
|
+
getDeviceInfo: "localsend_get_device_info",
|
|
523
|
+
/** Set our device alias */
|
|
524
|
+
setAlias: "localsend_set_alias",
|
|
525
|
+
// Settings
|
|
526
|
+
/** Get current settings */
|
|
527
|
+
getSettings: "localsend_get_settings",
|
|
528
|
+
/** Update settings */
|
|
529
|
+
setSettings: "localsend_set_settings",
|
|
530
|
+
// Discovery (desktop only)
|
|
531
|
+
/** Start device discovery via multicast UDP */
|
|
532
|
+
startDiscovery: "localsend_start_discovery",
|
|
533
|
+
/** Stop device discovery */
|
|
534
|
+
stopDiscovery: "localsend_stop_discovery",
|
|
535
|
+
/** Get list of discovered devices */
|
|
536
|
+
getDevices: "localsend_get_devices",
|
|
537
|
+
// Network scan (mobile only)
|
|
538
|
+
/** Scan network for devices via HTTP */
|
|
539
|
+
scanNetwork: "localsend_scan_network",
|
|
540
|
+
// Server (receiving files)
|
|
541
|
+
/** Start the HTTPS server for receiving files */
|
|
542
|
+
startServer: "localsend_start_server",
|
|
543
|
+
/** Stop the HTTPS server */
|
|
544
|
+
stopServer: "localsend_stop_server",
|
|
545
|
+
/** Get server status */
|
|
546
|
+
getServerStatus: "localsend_get_server_status",
|
|
547
|
+
/** Get pending incoming transfer requests */
|
|
548
|
+
getPendingTransfers: "localsend_get_pending_transfers",
|
|
549
|
+
/** Accept an incoming transfer */
|
|
550
|
+
acceptTransfer: "localsend_accept_transfer",
|
|
551
|
+
/** Reject an incoming transfer */
|
|
552
|
+
rejectTransfer: "localsend_reject_transfer",
|
|
553
|
+
// Client (sending files)
|
|
554
|
+
/** Prepare files for sending - collect metadata */
|
|
555
|
+
prepareFiles: "localsend_prepare_files",
|
|
556
|
+
/** Send files to a device */
|
|
557
|
+
sendFiles: "localsend_send_files",
|
|
558
|
+
/** Cancel an outgoing transfer */
|
|
559
|
+
cancelSend: "localsend_cancel_send"
|
|
560
|
+
};
|
|
561
|
+
|
|
516
562
|
// src/api/storage.ts
|
|
517
563
|
var StorageAPI = class {
|
|
518
564
|
constructor(client) {
|
|
@@ -1150,6 +1196,177 @@ var BackendManagement = class {
|
|
|
1150
1196
|
}
|
|
1151
1197
|
};
|
|
1152
1198
|
|
|
1199
|
+
// src/api/localsend.ts
|
|
1200
|
+
var LOCALSEND_EVENTS = {
|
|
1201
|
+
/** New device discovered */
|
|
1202
|
+
deviceDiscovered: "localsend:device-discovered",
|
|
1203
|
+
/** Device lost (no longer visible) */
|
|
1204
|
+
deviceLost: "localsend:device-lost",
|
|
1205
|
+
/** New incoming transfer request */
|
|
1206
|
+
transferRequest: "localsend:transfer-request",
|
|
1207
|
+
/** Transfer progress update */
|
|
1208
|
+
transferProgress: "localsend:transfer-progress",
|
|
1209
|
+
/** Transfer completed */
|
|
1210
|
+
transferComplete: "localsend:transfer-complete",
|
|
1211
|
+
/** Transfer failed */
|
|
1212
|
+
transferFailed: "localsend:transfer-failed"
|
|
1213
|
+
};
|
|
1214
|
+
var LocalSendAPI = class {
|
|
1215
|
+
constructor(client) {
|
|
1216
|
+
this.client = client;
|
|
1217
|
+
}
|
|
1218
|
+
// ==========================================================================
|
|
1219
|
+
// Initialization
|
|
1220
|
+
// ==========================================================================
|
|
1221
|
+
/**
|
|
1222
|
+
* Initialize LocalSend (generate identity, etc.)
|
|
1223
|
+
* Call this on app start
|
|
1224
|
+
* @returns Our device info
|
|
1225
|
+
*/
|
|
1226
|
+
async init() {
|
|
1227
|
+
return this.client.request(LOCALSEND_COMMANDS.init, {});
|
|
1228
|
+
}
|
|
1229
|
+
/**
|
|
1230
|
+
* Get our device info
|
|
1231
|
+
* @returns Our device info
|
|
1232
|
+
*/
|
|
1233
|
+
async getDeviceInfo() {
|
|
1234
|
+
return this.client.request(LOCALSEND_COMMANDS.getDeviceInfo, {});
|
|
1235
|
+
}
|
|
1236
|
+
/**
|
|
1237
|
+
* Set our device alias (display name)
|
|
1238
|
+
* @param alias New alias
|
|
1239
|
+
*/
|
|
1240
|
+
async setAlias(alias) {
|
|
1241
|
+
await this.client.request(LOCALSEND_COMMANDS.setAlias, { alias });
|
|
1242
|
+
}
|
|
1243
|
+
// ==========================================================================
|
|
1244
|
+
// Settings
|
|
1245
|
+
// ==========================================================================
|
|
1246
|
+
/**
|
|
1247
|
+
* Get current LocalSend settings
|
|
1248
|
+
* @returns Settings
|
|
1249
|
+
*/
|
|
1250
|
+
async getSettings() {
|
|
1251
|
+
return this.client.request(LOCALSEND_COMMANDS.getSettings, {});
|
|
1252
|
+
}
|
|
1253
|
+
/**
|
|
1254
|
+
* Update LocalSend settings
|
|
1255
|
+
* @param settings New settings
|
|
1256
|
+
*/
|
|
1257
|
+
async setSettings(settings) {
|
|
1258
|
+
await this.client.request(LOCALSEND_COMMANDS.setSettings, { settings });
|
|
1259
|
+
}
|
|
1260
|
+
// ==========================================================================
|
|
1261
|
+
// Discovery (Desktop only - multicast UDP)
|
|
1262
|
+
// ==========================================================================
|
|
1263
|
+
/**
|
|
1264
|
+
* Start device discovery via multicast UDP
|
|
1265
|
+
* Desktop only - on mobile use scanNetwork()
|
|
1266
|
+
*/
|
|
1267
|
+
async startDiscovery() {
|
|
1268
|
+
await this.client.request(LOCALSEND_COMMANDS.startDiscovery, {});
|
|
1269
|
+
}
|
|
1270
|
+
/**
|
|
1271
|
+
* Stop device discovery
|
|
1272
|
+
* Desktop only
|
|
1273
|
+
*/
|
|
1274
|
+
async stopDiscovery() {
|
|
1275
|
+
await this.client.request(LOCALSEND_COMMANDS.stopDiscovery, {});
|
|
1276
|
+
}
|
|
1277
|
+
/**
|
|
1278
|
+
* Get list of discovered devices
|
|
1279
|
+
* @returns Array of discovered devices
|
|
1280
|
+
*/
|
|
1281
|
+
async getDevices() {
|
|
1282
|
+
return this.client.request(LOCALSEND_COMMANDS.getDevices, {});
|
|
1283
|
+
}
|
|
1284
|
+
// ==========================================================================
|
|
1285
|
+
// Network Scan (Mobile only - HTTP)
|
|
1286
|
+
// ==========================================================================
|
|
1287
|
+
/**
|
|
1288
|
+
* Scan network for devices via HTTP
|
|
1289
|
+
* Mobile only - on desktop use startDiscovery()
|
|
1290
|
+
* @returns Array of discovered devices
|
|
1291
|
+
*/
|
|
1292
|
+
async scanNetwork() {
|
|
1293
|
+
return this.client.request(LOCALSEND_COMMANDS.scanNetwork, {});
|
|
1294
|
+
}
|
|
1295
|
+
// ==========================================================================
|
|
1296
|
+
// Server (Receiving files)
|
|
1297
|
+
// ==========================================================================
|
|
1298
|
+
/**
|
|
1299
|
+
* Start the HTTPS server for receiving files
|
|
1300
|
+
* @param port Optional port to listen on (default: 53317)
|
|
1301
|
+
* @returns Server info with port, fingerprint, and addresses
|
|
1302
|
+
*/
|
|
1303
|
+
async startServer(port) {
|
|
1304
|
+
return this.client.request(LOCALSEND_COMMANDS.startServer, { port });
|
|
1305
|
+
}
|
|
1306
|
+
/**
|
|
1307
|
+
* Stop the HTTPS server
|
|
1308
|
+
*/
|
|
1309
|
+
async stopServer() {
|
|
1310
|
+
await this.client.request(LOCALSEND_COMMANDS.stopServer, {});
|
|
1311
|
+
}
|
|
1312
|
+
/**
|
|
1313
|
+
* Get server status
|
|
1314
|
+
* @returns Server status
|
|
1315
|
+
*/
|
|
1316
|
+
async getServerStatus() {
|
|
1317
|
+
return this.client.request(LOCALSEND_COMMANDS.getServerStatus, {});
|
|
1318
|
+
}
|
|
1319
|
+
/**
|
|
1320
|
+
* Get pending incoming transfer requests
|
|
1321
|
+
* @returns Array of pending transfers
|
|
1322
|
+
*/
|
|
1323
|
+
async getPendingTransfers() {
|
|
1324
|
+
return this.client.request(LOCALSEND_COMMANDS.getPendingTransfers, {});
|
|
1325
|
+
}
|
|
1326
|
+
/**
|
|
1327
|
+
* Accept an incoming transfer
|
|
1328
|
+
* @param sessionId Session ID of the transfer
|
|
1329
|
+
* @param saveDir Directory to save files to
|
|
1330
|
+
*/
|
|
1331
|
+
async acceptTransfer(sessionId, saveDir) {
|
|
1332
|
+
await this.client.request(LOCALSEND_COMMANDS.acceptTransfer, { sessionId, saveDir });
|
|
1333
|
+
}
|
|
1334
|
+
/**
|
|
1335
|
+
* Reject an incoming transfer
|
|
1336
|
+
* @param sessionId Session ID of the transfer
|
|
1337
|
+
*/
|
|
1338
|
+
async rejectTransfer(sessionId) {
|
|
1339
|
+
await this.client.request(LOCALSEND_COMMANDS.rejectTransfer, { sessionId });
|
|
1340
|
+
}
|
|
1341
|
+
// ==========================================================================
|
|
1342
|
+
// Client (Sending files)
|
|
1343
|
+
// ==========================================================================
|
|
1344
|
+
/**
|
|
1345
|
+
* Prepare files for sending - collect metadata
|
|
1346
|
+
* @param paths Array of file/folder paths to send
|
|
1347
|
+
* @returns Array of file info with metadata
|
|
1348
|
+
*/
|
|
1349
|
+
async prepareFiles(paths) {
|
|
1350
|
+
return this.client.request(LOCALSEND_COMMANDS.prepareFiles, { paths });
|
|
1351
|
+
}
|
|
1352
|
+
/**
|
|
1353
|
+
* Send files to a device
|
|
1354
|
+
* @param device Target device
|
|
1355
|
+
* @param files Files to send (from prepareFiles)
|
|
1356
|
+
* @returns Session ID for tracking progress
|
|
1357
|
+
*/
|
|
1358
|
+
async sendFiles(device, files) {
|
|
1359
|
+
return this.client.request(LOCALSEND_COMMANDS.sendFiles, { device, files });
|
|
1360
|
+
}
|
|
1361
|
+
/**
|
|
1362
|
+
* Cancel an outgoing transfer
|
|
1363
|
+
* @param sessionId Session ID of the transfer
|
|
1364
|
+
*/
|
|
1365
|
+
async cancelSend(sessionId) {
|
|
1366
|
+
await this.client.request(LOCALSEND_COMMANDS.cancelSend, { sessionId });
|
|
1367
|
+
}
|
|
1368
|
+
};
|
|
1369
|
+
|
|
1153
1370
|
// src/client/tableName.ts
|
|
1154
1371
|
function validatePublicKey(publicKey) {
|
|
1155
1372
|
if (!publicKey || typeof publicKey !== "string" || publicKey.trim() === "") {
|
|
@@ -1348,6 +1565,105 @@ async function setupTauriEventListeners(ctx, log, onEvent, onContextChange) {
|
|
|
1348
1565
|
console.error("[HaexVault SDK] Failed to setup sync tables updated listener:", error);
|
|
1349
1566
|
log("Failed to setup sync tables updated listener:", error);
|
|
1350
1567
|
}
|
|
1568
|
+
await setupLocalSendEventListeners(log, onEvent);
|
|
1569
|
+
}
|
|
1570
|
+
async function setupLocalSendEventListeners(log, onEvent) {
|
|
1571
|
+
const { listen } = getTauriEvent();
|
|
1572
|
+
try {
|
|
1573
|
+
await listen(LOCALSEND_EVENTS.deviceDiscovered, (event) => {
|
|
1574
|
+
console.log("[HaexVault SDK] LocalSend device discovered:", event.payload);
|
|
1575
|
+
log("Received LocalSend device discovered event:", event);
|
|
1576
|
+
if (event.payload) {
|
|
1577
|
+
onEvent({
|
|
1578
|
+
type: LOCALSEND_EVENTS.deviceDiscovered,
|
|
1579
|
+
data: event.payload,
|
|
1580
|
+
timestamp: Date.now()
|
|
1581
|
+
});
|
|
1582
|
+
}
|
|
1583
|
+
});
|
|
1584
|
+
console.log("[HaexVault SDK] LocalSend device discovered listener registered");
|
|
1585
|
+
} catch (error) {
|
|
1586
|
+
console.error("[HaexVault SDK] Failed to setup LocalSend device discovered listener:", error);
|
|
1587
|
+
}
|
|
1588
|
+
try {
|
|
1589
|
+
await listen(LOCALSEND_EVENTS.deviceLost, (event) => {
|
|
1590
|
+
console.log("[HaexVault SDK] LocalSend device lost:", event.payload);
|
|
1591
|
+
log("Received LocalSend device lost event:", event);
|
|
1592
|
+
if (event.payload) {
|
|
1593
|
+
onEvent({
|
|
1594
|
+
type: LOCALSEND_EVENTS.deviceLost,
|
|
1595
|
+
data: event.payload,
|
|
1596
|
+
timestamp: Date.now()
|
|
1597
|
+
});
|
|
1598
|
+
}
|
|
1599
|
+
});
|
|
1600
|
+
console.log("[HaexVault SDK] LocalSend device lost listener registered");
|
|
1601
|
+
} catch (error) {
|
|
1602
|
+
console.error("[HaexVault SDK] Failed to setup LocalSend device lost listener:", error);
|
|
1603
|
+
}
|
|
1604
|
+
try {
|
|
1605
|
+
await listen(LOCALSEND_EVENTS.transferRequest, (event) => {
|
|
1606
|
+
console.log("[HaexVault SDK] LocalSend transfer request:", event.payload);
|
|
1607
|
+
log("Received LocalSend transfer request event:", event);
|
|
1608
|
+
if (event.payload) {
|
|
1609
|
+
onEvent({
|
|
1610
|
+
type: LOCALSEND_EVENTS.transferRequest,
|
|
1611
|
+
data: event.payload,
|
|
1612
|
+
timestamp: Date.now()
|
|
1613
|
+
});
|
|
1614
|
+
}
|
|
1615
|
+
});
|
|
1616
|
+
console.log("[HaexVault SDK] LocalSend transfer request listener registered");
|
|
1617
|
+
} catch (error) {
|
|
1618
|
+
console.error("[HaexVault SDK] Failed to setup LocalSend transfer request listener:", error);
|
|
1619
|
+
}
|
|
1620
|
+
try {
|
|
1621
|
+
await listen(LOCALSEND_EVENTS.transferProgress, (event) => {
|
|
1622
|
+
log("Received LocalSend transfer progress event:", event);
|
|
1623
|
+
if (event.payload) {
|
|
1624
|
+
onEvent({
|
|
1625
|
+
type: LOCALSEND_EVENTS.transferProgress,
|
|
1626
|
+
data: event.payload,
|
|
1627
|
+
timestamp: Date.now()
|
|
1628
|
+
});
|
|
1629
|
+
}
|
|
1630
|
+
});
|
|
1631
|
+
console.log("[HaexVault SDK] LocalSend transfer progress listener registered");
|
|
1632
|
+
} catch (error) {
|
|
1633
|
+
console.error("[HaexVault SDK] Failed to setup LocalSend transfer progress listener:", error);
|
|
1634
|
+
}
|
|
1635
|
+
try {
|
|
1636
|
+
await listen(LOCALSEND_EVENTS.transferComplete, (event) => {
|
|
1637
|
+
console.log("[HaexVault SDK] LocalSend transfer complete:", event.payload);
|
|
1638
|
+
log("Received LocalSend transfer complete event:", event);
|
|
1639
|
+
if (event.payload) {
|
|
1640
|
+
onEvent({
|
|
1641
|
+
type: LOCALSEND_EVENTS.transferComplete,
|
|
1642
|
+
data: event.payload,
|
|
1643
|
+
timestamp: Date.now()
|
|
1644
|
+
});
|
|
1645
|
+
}
|
|
1646
|
+
});
|
|
1647
|
+
console.log("[HaexVault SDK] LocalSend transfer complete listener registered");
|
|
1648
|
+
} catch (error) {
|
|
1649
|
+
console.error("[HaexVault SDK] Failed to setup LocalSend transfer complete listener:", error);
|
|
1650
|
+
}
|
|
1651
|
+
try {
|
|
1652
|
+
await listen(LOCALSEND_EVENTS.transferFailed, (event) => {
|
|
1653
|
+
console.log("[HaexVault SDK] LocalSend transfer failed:", event.payload);
|
|
1654
|
+
log("Received LocalSend transfer failed event:", event);
|
|
1655
|
+
if (event.payload) {
|
|
1656
|
+
onEvent({
|
|
1657
|
+
type: LOCALSEND_EVENTS.transferFailed,
|
|
1658
|
+
data: event.payload,
|
|
1659
|
+
timestamp: Date.now()
|
|
1660
|
+
});
|
|
1661
|
+
}
|
|
1662
|
+
});
|
|
1663
|
+
console.log("[HaexVault SDK] LocalSend transfer failed listener registered");
|
|
1664
|
+
} catch (error) {
|
|
1665
|
+
console.error("[HaexVault SDK] Failed to setup LocalSend transfer failed listener:", error);
|
|
1666
|
+
}
|
|
1351
1667
|
}
|
|
1352
1668
|
async function initIframeMode(ctx, log, messageHandler, request) {
|
|
1353
1669
|
if (!isInIframe()) {
|
|
@@ -1681,6 +1997,7 @@ var HaexVaultSdk = class {
|
|
|
1681
1997
|
this.web = new WebAPI(this);
|
|
1682
1998
|
this.permissions = new PermissionsAPI(this);
|
|
1683
1999
|
this.remoteStorage = new RemoteStorageAPI(this);
|
|
2000
|
+
this.localsend = new LocalSendAPI(this);
|
|
1684
2001
|
installConsoleForwarding(this.config.debug);
|
|
1685
2002
|
this.readyPromise = new Promise((resolve) => {
|
|
1686
2003
|
this.resolveReady = resolve;
|