@haex-space/vault-sdk 2.4.0 → 2.5.2

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.
@@ -1,4 +1,4 @@
1
- import { D as DatabaseQueryResult, M as Migration, b as MigrationResult, W as WebRequestOptions, c as WebResponse, H as HaexHubConfig, a as ExtensionInfo, A as ApplicationContext, d as DatabasePermissionRequest, P as PermissionResponse, S as SearchResult, e as ExternalRequestHandler, f as ExternalResponse, g as EventCallback } from './types-CmPqOcLB.mjs';
1
+ import { D as DatabaseQueryResult, M as Migration, b as MigrationResult, W as WebRequestOptions, c as WebResponse, H as HaexHubConfig, a as ExtensionInfo, A as ApplicationContext, d as DatabasePermissionRequest, P as PermissionResponse, S as SearchResult, e as ExternalRequestHandler, f as ExternalResponse, g as EventCallback } from './types-Dzp3QG4t.mjs';
2
2
  import { SqliteRemoteDatabase } from 'drizzle-orm/sqlite-proxy';
3
3
 
4
4
  declare class StorageAPI {
@@ -1,4 +1,4 @@
1
- import { D as DatabaseQueryResult, M as Migration, b as MigrationResult, W as WebRequestOptions, c as WebResponse, H as HaexHubConfig, a as ExtensionInfo, A as ApplicationContext, d as DatabasePermissionRequest, P as PermissionResponse, S as SearchResult, e as ExternalRequestHandler, f as ExternalResponse, g as EventCallback } from './types-CmPqOcLB.js';
1
+ import { D as DatabaseQueryResult, M as Migration, b as MigrationResult, W as WebRequestOptions, c as WebResponse, H as HaexHubConfig, a as ExtensionInfo, A as ApplicationContext, d as DatabasePermissionRequest, P as PermissionResponse, S as SearchResult, e as ExternalRequestHandler, f as ExternalResponse, g as EventCallback } from './types-Dzp3QG4t.js';
2
2
  import { SqliteRemoteDatabase } from 'drizzle-orm/sqlite-proxy';
3
3
 
4
4
  declare class StorageAPI {
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- import { H as HaexVaultClient } from './client-ClYpUDoI.mjs';
2
- export { A as AddBackendOptions, m as AddSyncRuleOptions, C as CreateSpaceOptions, D as DatabaseAPI, n as DownloadFileOptions, c as FileInfo, b as FileSpace, a as FileSyncAPI, d as FileSyncState, F as FilesystemAPI, L as ListFilesOptions, P as PermissionsAPI, g as S3BackendConfig, e as StorageBackendInfo, f as StorageBackendType, i as SyncDirection, k as SyncError, l as SyncProgress, h as SyncRule, j as SyncStatus, U as UploadFileOptions, W as WebAPI } from './client-ClYpUDoI.mjs';
3
- import { E as ExtensionManifest, H as HaexHubConfig } from './types-CmPqOcLB.mjs';
4
- export { A as ApplicationContext, C as ContextChangedEvent, v as DEFAULT_TIMEOUT, o as DatabaseColumnInfo, m as DatabaseExecuteParams, k as DatabasePermission, d as DatabasePermissionRequest, l as DatabaseQueryParams, D as DatabaseQueryResult, n as DatabaseTableInfo, u as ErrorCode, g as EventCallback, a as ExtensionInfo, s as ExternalRequest, r as ExternalRequestEvent, e as ExternalRequestHandler, f as ExternalResponse, y as HAEXTENSION_EVENTS, j as HaexHubEvent, h as HaexHubRequest, i as HaexHubResponse, x as HaexVaultSdkError, z as HaextensionEvent, P as PermissionResponse, t as PermissionStatus, p as SearchQuery, q as SearchRequestEvent, S as SearchResult, T as TABLE_SEPARATOR, W as WebRequestOptions, c as WebResponse, w as getTableName } from './types-CmPqOcLB.mjs';
1
+ import { H as HaexVaultClient } from './client-DTqEEmX-.mjs';
2
+ export { A as AddBackendOptions, m as AddSyncRuleOptions, C as CreateSpaceOptions, D as DatabaseAPI, n as DownloadFileOptions, c as FileInfo, b as FileSpace, a as FileSyncAPI, d as FileSyncState, F as FilesystemAPI, L as ListFilesOptions, P as PermissionsAPI, g as S3BackendConfig, e as StorageBackendInfo, f as StorageBackendType, i as SyncDirection, k as SyncError, l as SyncProgress, h as SyncRule, j as SyncStatus, U as UploadFileOptions, W as WebAPI } from './client-DTqEEmX-.mjs';
3
+ import { E as ExtensionManifest, H as HaexHubConfig } from './types-Dzp3QG4t.mjs';
4
+ export { A as ApplicationContext, t as AuthorizedClient, B as BlockedClient, C as ContextChangedEvent, z as DEFAULT_TIMEOUT, o as DatabaseColumnInfo, m as DatabaseExecuteParams, k as DatabasePermission, d as DatabasePermissionRequest, l as DatabaseQueryParams, D as DatabaseQueryResult, n as DatabaseTableInfo, O as EXTERNAL_EVENTS, y as ErrorCode, g as EventCallback, a as ExtensionInfo, v as ExternalAuthDecision, w as ExternalConnection, G as ExternalConnectionState, Q as ExternalEvent, s as ExternalRequest, r as ExternalRequestEvent, e as ExternalRequestHandler, f as ExternalResponse, L as HAEXTENSION_EVENTS, j as HaexHubEvent, h as HaexHubRequest, i as HaexHubResponse, K as HaexVaultSdkError, N as HaextensionEvent, u as PendingAuthorization, P as PermissionResponse, x as PermissionStatus, p as SearchQuery, q as SearchRequestEvent, S as SearchResult, T as TABLE_SEPARATOR, W as WebRequestOptions, c as WebResponse, J as canExternalClientSendRequests, F as getTableName, I as isExternalClientConnected } from './types-Dzp3QG4t.mjs';
5
5
  export { H as HaextensionConfig } from './config-D_HXjsEV.mjs';
6
6
  import 'drizzle-orm/sqlite-proxy';
7
7
 
@@ -186,7 +186,18 @@ declare const TAURI_COMMANDS: {
186
186
  readonly showImage: "webview_extension_fs_show_image";
187
187
  };
188
188
  readonly external: {
189
- readonly respond: "webview_extension_external_respond";
189
+ readonly respond: "external_respond";
190
+ readonly bridgeStart: "external_bridge_start";
191
+ readonly bridgeStop: "external_bridge_stop";
192
+ readonly bridgeGetStatus: "external_bridge_get_status";
193
+ readonly clientAllow: "external_client_allow";
194
+ readonly clientBlock: "external_client_block";
195
+ readonly getAuthorizedClients: "external_get_authorized_clients";
196
+ readonly revokeClient: "external_revoke_client";
197
+ readonly getBlockedClients: "external_get_blocked_clients";
198
+ readonly unblockClient: "external_unblock_client";
199
+ readonly isClientBlocked: "external_is_client_blocked";
200
+ readonly getPendingAuthorizations: "external_get_pending_authorizations";
190
201
  };
191
202
  readonly extension: {
192
203
  readonly getInfo: "webview_extension_get_info";
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { H as HaexVaultClient } from './client-BSdAg7D1.js';
2
- export { A as AddBackendOptions, m as AddSyncRuleOptions, C as CreateSpaceOptions, D as DatabaseAPI, n as DownloadFileOptions, c as FileInfo, b as FileSpace, a as FileSyncAPI, d as FileSyncState, F as FilesystemAPI, L as ListFilesOptions, P as PermissionsAPI, g as S3BackendConfig, e as StorageBackendInfo, f as StorageBackendType, i as SyncDirection, k as SyncError, l as SyncProgress, h as SyncRule, j as SyncStatus, U as UploadFileOptions, W as WebAPI } from './client-BSdAg7D1.js';
3
- import { E as ExtensionManifest, H as HaexHubConfig } from './types-CmPqOcLB.js';
4
- export { A as ApplicationContext, C as ContextChangedEvent, v as DEFAULT_TIMEOUT, o as DatabaseColumnInfo, m as DatabaseExecuteParams, k as DatabasePermission, d as DatabasePermissionRequest, l as DatabaseQueryParams, D as DatabaseQueryResult, n as DatabaseTableInfo, u as ErrorCode, g as EventCallback, a as ExtensionInfo, s as ExternalRequest, r as ExternalRequestEvent, e as ExternalRequestHandler, f as ExternalResponse, y as HAEXTENSION_EVENTS, j as HaexHubEvent, h as HaexHubRequest, i as HaexHubResponse, x as HaexVaultSdkError, z as HaextensionEvent, P as PermissionResponse, t as PermissionStatus, p as SearchQuery, q as SearchRequestEvent, S as SearchResult, T as TABLE_SEPARATOR, W as WebRequestOptions, c as WebResponse, w as getTableName } from './types-CmPqOcLB.js';
1
+ import { H as HaexVaultClient } from './client-DfmTO8Mz.js';
2
+ export { A as AddBackendOptions, m as AddSyncRuleOptions, C as CreateSpaceOptions, D as DatabaseAPI, n as DownloadFileOptions, c as FileInfo, b as FileSpace, a as FileSyncAPI, d as FileSyncState, F as FilesystemAPI, L as ListFilesOptions, P as PermissionsAPI, g as S3BackendConfig, e as StorageBackendInfo, f as StorageBackendType, i as SyncDirection, k as SyncError, l as SyncProgress, h as SyncRule, j as SyncStatus, U as UploadFileOptions, W as WebAPI } from './client-DfmTO8Mz.js';
3
+ import { E as ExtensionManifest, H as HaexHubConfig } from './types-Dzp3QG4t.js';
4
+ export { A as ApplicationContext, t as AuthorizedClient, B as BlockedClient, C as ContextChangedEvent, z as DEFAULT_TIMEOUT, o as DatabaseColumnInfo, m as DatabaseExecuteParams, k as DatabasePermission, d as DatabasePermissionRequest, l as DatabaseQueryParams, D as DatabaseQueryResult, n as DatabaseTableInfo, O as EXTERNAL_EVENTS, y as ErrorCode, g as EventCallback, a as ExtensionInfo, v as ExternalAuthDecision, w as ExternalConnection, G as ExternalConnectionState, Q as ExternalEvent, s as ExternalRequest, r as ExternalRequestEvent, e as ExternalRequestHandler, f as ExternalResponse, L as HAEXTENSION_EVENTS, j as HaexHubEvent, h as HaexHubRequest, i as HaexHubResponse, K as HaexVaultSdkError, N as HaextensionEvent, u as PendingAuthorization, P as PermissionResponse, x as PermissionStatus, p as SearchQuery, q as SearchRequestEvent, S as SearchResult, T as TABLE_SEPARATOR, W as WebRequestOptions, c as WebResponse, J as canExternalClientSendRequests, F as getTableName, I as isExternalClientConnected } from './types-Dzp3QG4t.js';
5
5
  export { H as HaextensionConfig } from './config-D_HXjsEV.js';
6
6
  import 'drizzle-orm/sqlite-proxy';
7
7
 
@@ -186,7 +186,18 @@ declare const TAURI_COMMANDS: {
186
186
  readonly showImage: "webview_extension_fs_show_image";
187
187
  };
188
188
  readonly external: {
189
- readonly respond: "webview_extension_external_respond";
189
+ readonly respond: "external_respond";
190
+ readonly bridgeStart: "external_bridge_start";
191
+ readonly bridgeStop: "external_bridge_stop";
192
+ readonly bridgeGetStatus: "external_bridge_get_status";
193
+ readonly clientAllow: "external_client_allow";
194
+ readonly clientBlock: "external_client_block";
195
+ readonly getAuthorizedClients: "external_get_authorized_clients";
196
+ readonly revokeClient: "external_revoke_client";
197
+ readonly getBlockedClients: "external_get_blocked_clients";
198
+ readonly unblockClient: "external_unblock_client";
199
+ readonly isClientBlocked: "external_is_client_blocked";
200
+ readonly getPendingAuthorizations: "external_get_pending_authorizations";
190
201
  };
191
202
  readonly extension: {
192
203
  readonly getInfo: "webview_extension_get_info";
package/dist/index.js CHANGED
@@ -375,9 +375,13 @@ var HAEXTENSION_EVENTS = {
375
375
  /** Context (theme, locale, platform) has changed */
376
376
  CONTEXT_CHANGED: "haextension:context:changed",
377
377
  /** Search request from HaexHub */
378
- SEARCH_REQUEST: "haextension:search:request",
379
- /** External request from authorized client (browser extension, CLI, server, etc.) */
380
- EXTERNAL_REQUEST: "haextension:external:request"
378
+ SEARCH_REQUEST: "haextension:search:request"
379
+ };
380
+ var EXTERNAL_EVENTS = {
381
+ /** External request from authorized client */
382
+ REQUEST: "haextension:external:request",
383
+ /** New external client requesting authorization */
384
+ AUTHORIZATION_REQUEST: "external:authorization-request"
381
385
  };
382
386
 
383
387
  // src/types.ts
@@ -392,6 +396,20 @@ var PermissionStatus = /* @__PURE__ */ ((PermissionStatus2) => {
392
396
  PermissionStatus2["ASK"] = "ask";
393
397
  return PermissionStatus2;
394
398
  })(PermissionStatus || {});
399
+ var ExternalConnectionState = /* @__PURE__ */ ((ExternalConnectionState2) => {
400
+ ExternalConnectionState2["DISCONNECTED"] = "disconnected";
401
+ ExternalConnectionState2["CONNECTING"] = "connecting";
402
+ ExternalConnectionState2["CONNECTED"] = "connected";
403
+ ExternalConnectionState2["PENDING_APPROVAL"] = "pending_approval";
404
+ ExternalConnectionState2["PAIRED"] = "paired";
405
+ return ExternalConnectionState2;
406
+ })(ExternalConnectionState || {});
407
+ function isExternalClientConnected(state) {
408
+ return state === "connected" /* CONNECTED */ || state === "pending_approval" /* PENDING_APPROVAL */ || state === "paired" /* PAIRED */;
409
+ }
410
+ function canExternalClientSendRequests(state) {
411
+ return state === "paired" /* PAIRED */;
412
+ }
395
413
  var ErrorCode = /* @__PURE__ */ ((ErrorCode2) => {
396
414
  ErrorCode2["TIMEOUT"] = "TIMEOUT";
397
415
  ErrorCode2["NOT_IN_IFRAME"] = "NOT_IN_IFRAME";
@@ -1266,7 +1284,24 @@ var TAURI_COMMANDS = {
1266
1284
  showImage: "webview_extension_fs_show_image"
1267
1285
  },
1268
1286
  external: {
1269
- respond: "webview_extension_external_respond"
1287
+ // Response handling (called by extensions)
1288
+ respond: "external_respond",
1289
+ // Bridge server management
1290
+ bridgeStart: "external_bridge_start",
1291
+ bridgeStop: "external_bridge_stop",
1292
+ bridgeGetStatus: "external_bridge_get_status",
1293
+ // Client authorization (unified API with remember flag)
1294
+ clientAllow: "external_client_allow",
1295
+ clientBlock: "external_client_block",
1296
+ // Authorized clients management
1297
+ getAuthorizedClients: "external_get_authorized_clients",
1298
+ revokeClient: "external_revoke_client",
1299
+ // Blocked clients management
1300
+ getBlockedClients: "external_get_blocked_clients",
1301
+ unblockClient: "external_unblock_client",
1302
+ isClientBlocked: "external_is_client_blocked",
1303
+ // Pending authorizations
1304
+ getPendingAuthorizations: "external_get_pending_authorizations"
1270
1305
  },
1271
1306
  extension: {
1272
1307
  getInfo: "webview_extension_get_info",
@@ -2447,7 +2482,9 @@ function createHaexVaultClient(config = {}) {
2447
2482
 
2448
2483
  exports.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT;
2449
2484
  exports.DatabaseAPI = DatabaseAPI;
2485
+ exports.EXTERNAL_EVENTS = EXTERNAL_EVENTS;
2450
2486
  exports.ErrorCode = ErrorCode;
2487
+ exports.ExternalConnectionState = ExternalConnectionState;
2451
2488
  exports.FileSyncAPI = FileSyncAPI;
2452
2489
  exports.FilesystemAPI = FilesystemAPI;
2453
2490
  exports.HAEXSPACE_MESSAGE_TYPES = HAEXSPACE_MESSAGE_TYPES;
@@ -2462,6 +2499,7 @@ exports.TAURI_COMMANDS = TAURI_COMMANDS;
2462
2499
  exports.WebAPI = WebAPI;
2463
2500
  exports.arrayBufferToBase64 = arrayBufferToBase64;
2464
2501
  exports.base64ToArrayBuffer = base64ToArrayBuffer;
2502
+ exports.canExternalClientSendRequests = canExternalClientSendRequests;
2465
2503
  exports.createHaexVaultClient = createHaexVaultClient;
2466
2504
  exports.decryptCrdtData = decryptCrdtData;
2467
2505
  exports.decryptString = decryptString;
@@ -2480,6 +2518,7 @@ exports.installHistoryPolyfill = installHistoryPolyfill;
2480
2518
  exports.installLocalStoragePolyfill = installLocalStoragePolyfill;
2481
2519
  exports.installPolyfills = installPolyfills;
2482
2520
  exports.installSessionStoragePolyfill = installSessionStoragePolyfill;
2521
+ exports.isExternalClientConnected = isExternalClientConnected;
2483
2522
  exports.sortObjectKeysRecursively = sortObjectKeysRecursively;
2484
2523
  exports.unwrapKey = unwrapKey;
2485
2524
  exports.verifyExtensionSignature = verifyExtensionSignature;