@holochain/client 0.20.0-dev.0 → 0.20.0-dev.1

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.
@@ -573,6 +573,24 @@ export type AddAgentInfoRequest = {
573
573
  * @public
574
574
  */
575
575
  export type AddAgentInfoResponse = unknown;
576
+ /**
577
+ * @public
578
+ */
579
+ export interface AgentMetaInfoRequest {
580
+ url: string;
581
+ dna_hashes?: DnaHash[];
582
+ }
583
+ /**
584
+ * @public
585
+ */
586
+ export type AgentMetaInfoResponse = Record<DnaHashB64, Record<string, AgentMetaInfo>>;
587
+ /**
588
+ * @public
589
+ */
590
+ export interface AgentMetaInfo {
591
+ meta_value: string;
592
+ expires_at: number;
593
+ }
576
594
  /**
577
595
  * @public
578
596
  */
@@ -2,7 +2,7 @@ import { CapSecret, GrantedFunctions } from "../../hdk/index.js";
2
2
  import type { AgentPubKey, CellId } from "../../types.js";
3
3
  import { WsClient } from "../client.js";
4
4
  import { Requester, Transformer, WebsocketConnectionOptions } from "../common.js";
5
- import { AddAgentInfoRequest, AddAgentInfoResponse, AdminApi, AgentInfoRequest, AgentInfoResponse, AttachAppInterfaceRequest, AttachAppInterfaceResponse, DeleteCloneCellRequest, DeleteCloneCellResponse, DisableAppRequest, DisableAppResponse, DumpFullStateRequest, DumpFullStateResponse, DumpNetworkMetricsRequest, DumpNetworkMetricsResponse, DumpNetworkStatsRequest, DumpNetworkStatsResponse, DumpStateRequest, DumpStateResponse, EnableAppRequest, EnableAppResponse, GenerateAgentPubKeyRequest, GenerateAgentPubKeyResponse, GetDnaDefinitionRequest, GetDnaDefinitionResponse, GrantZomeCallCapabilityRequest, GrantZomeCallCapabilityResponse, InstallAppRequest, InstallAppResponse, IssueAppAuthenticationTokenRequest, IssueAppAuthenticationTokenResponse, ListAppInterfacesRequest, ListAppInterfacesResponse, ListAppsRequest, ListAppsResponse, ListCellIdsRequest, ListCellIdsResponse, ListDnasRequest, ListDnasResponse, RegisterDnaRequest, RegisterDnaResponse, RevokeAgentKeyRequest, RevokeAgentKeyResponse, StorageInfoRequest, StorageInfoResponse, UninstallAppRequest, UninstallAppResponse, UpdateCoordinatorsRequest, UpdateCoordinatorsResponse } from "./types.js";
5
+ import { AddAgentInfoRequest, AddAgentInfoResponse, AdminApi, AgentInfoRequest, AgentInfoResponse, AgentMetaInfoResponse, AgentMetaInfoRequest, AttachAppInterfaceRequest, AttachAppInterfaceResponse, DeleteCloneCellRequest, DeleteCloneCellResponse, DisableAppRequest, DisableAppResponse, DumpFullStateRequest, DumpFullStateResponse, DumpNetworkMetricsRequest, DumpNetworkMetricsResponse, DumpNetworkStatsRequest, DumpNetworkStatsResponse, DumpStateRequest, DumpStateResponse, EnableAppRequest, EnableAppResponse, GenerateAgentPubKeyRequest, GenerateAgentPubKeyResponse, GetDnaDefinitionRequest, GetDnaDefinitionResponse, GrantZomeCallCapabilityRequest, GrantZomeCallCapabilityResponse, InstallAppRequest, InstallAppResponse, IssueAppAuthenticationTokenRequest, IssueAppAuthenticationTokenResponse, ListAppInterfacesRequest, ListAppInterfacesResponse, ListAppsRequest, ListAppsResponse, ListCellIdsRequest, ListCellIdsResponse, ListDnasRequest, ListDnasResponse, RegisterDnaRequest, RegisterDnaResponse, RevokeAgentKeyRequest, RevokeAgentKeyResponse, StorageInfoRequest, StorageInfoResponse, UninstallAppRequest, UninstallAppResponse, UpdateCoordinatorsRequest, UpdateCoordinatorsResponse } from "./types.js";
6
6
  /**
7
7
  * A class for interacting with a conductor's Admin API.
8
8
  *
@@ -101,6 +101,10 @@ export declare class AdminWebsocket implements AdminApi {
101
101
  * Add an existing agent to Holochain.
102
102
  */
103
103
  addAgentInfo: Requester<AddAgentInfoRequest, AddAgentInfoResponse>;
104
+ /**
105
+ * Request agent meta info about an agent.
106
+ */
107
+ agentMetaInfo: Requester<AgentMetaInfoRequest, AgentMetaInfoResponse>;
104
108
  /**
105
109
  * Delete a disabled clone cell.
106
110
  */
@@ -117,6 +117,10 @@ export class AdminWebsocket {
117
117
  * Add an existing agent to Holochain.
118
118
  */
119
119
  addAgentInfo = this._requester("add_agent_info");
120
+ /**
121
+ * Request agent meta info about an agent.
122
+ */
123
+ agentMetaInfo = this._requester("agent_meta_info");
120
124
  /**
121
125
  * Delete a disabled clone cell.
122
126
  */
@@ -1,6 +1,6 @@
1
1
  import { UnsubscribeFunction } from "emittery";
2
2
  import { AgentPubKey, InstalledAppId, RoleName } from "../../types.js";
3
- import { AgentInfoRequest, AgentInfoResponse, AppInfo, ClonedCell, DumpNetworkMetricsRequest, DumpNetworkMetricsResponse, DumpNetworkStatsResponse, MemproofMap } from "../admin/index.js";
3
+ import { AgentInfoRequest, AgentInfoResponse, AgentMetaInfoRequest, AppInfo, ClonedCell, DumpNetworkMetricsRequest, DumpNetworkMetricsResponse, DumpNetworkStatsResponse, MemproofMap } from "../admin/index.js";
4
4
  import { WsClient } from "../client.js";
5
5
  import { AbandonCountersigningSessionStateRequest, AppClient, AppEvents, AppWebsocketConnectionOptions, CallZomeRequest, CallZomeRequestSigned, CreateCloneCellRequest, DisableCloneCellRequest, EnableCloneCellRequest, GetCountersigningSessionStateRequest, GetCountersigningSessionStateResponse, PublishCountersigningSessionStateRequest, RoleNameCallZomeRequest, SignalCb } from "./types.js";
6
6
  /**
@@ -19,6 +19,7 @@ export declare class AppWebsocket implements AppClient {
19
19
  cachedAppInfo?: AppInfo | null;
20
20
  private readonly appInfoRequester;
21
21
  private readonly agentInfoRequester;
22
+ private readonly agentMetaInfoRequester;
22
23
  private readonly callZomeRequester;
23
24
  private readonly provideMemproofRequester;
24
25
  private readonly enableAppRequester;
@@ -53,6 +54,13 @@ export declare class AppWebsocket implements AppClient {
53
54
  * @returns The app's agent infos as JSON string.
54
55
  */
55
56
  agentInfo(req: AgentInfoRequest, timeout?: number): Promise<AgentInfoResponse>;
57
+ /**
58
+ * Request agent meta info for an agent by peer Url.
59
+ *
60
+ * @param req - The peer Url of the agent and an optional array of DNA hashes
61
+ * @returns The app's agent infos as JSON string.
62
+ */
63
+ agentMetaInfo(req: AgentMetaInfoRequest, timeout?: number): Promise<AgentInfoResponse>;
56
64
  /**
57
65
  * Request network stats.
58
66
  *
@@ -25,6 +25,7 @@ export class AppWebsocket {
25
25
  cachedAppInfo;
26
26
  appInfoRequester;
27
27
  agentInfoRequester;
28
+ agentMetaInfoRequester;
28
29
  callZomeRequester;
29
30
  provideMemproofRequester;
30
31
  enableAppRequester;
@@ -46,6 +47,7 @@ export class AppWebsocket {
46
47
  this.cachedAppInfo = appInfo;
47
48
  this.appInfoRequester = AppWebsocket.requester(this.client, "app_info", this.defaultTimeout);
48
49
  this.agentInfoRequester = AppWebsocket.requester(this.client, "agent_info", this.defaultTimeout);
50
+ this.agentMetaInfoRequester = AppWebsocket.requester(this.client, "agent_meta_info", this.defaultTimeout);
49
51
  this.callZomeRequester = AppWebsocket.requester(this.client, "call_zome", this.defaultTimeout, this.callZomeTransform);
50
52
  this.provideMemproofRequester = AppWebsocket.requester(this.client, "provide_memproofs", this.defaultTimeout);
51
53
  this.enableAppRequester = AppWebsocket.requester(this.client, "enable_app", this.defaultTimeout);
@@ -121,6 +123,16 @@ export class AppWebsocket {
121
123
  const agentInfos = await this.agentInfoRequester(req, timeout);
122
124
  return agentInfos;
123
125
  }
126
+ /**
127
+ * Request agent meta info for an agent by peer Url.
128
+ *
129
+ * @param req - The peer Url of the agent and an optional array of DNA hashes
130
+ * @returns The app's agent infos as JSON string.
131
+ */
132
+ async agentMetaInfo(req, timeout) {
133
+ const agentInfos = await this.agentMetaInfoRequester(req, timeout);
134
+ return agentInfos;
135
+ }
124
136
  /**
125
137
  * Request network stats.
126
138
  *
@@ -20,7 +20,7 @@ export interface AppAuthenticationRequest {
20
20
  export declare class WsClient extends Emittery {
21
21
  socket: IsoWebSocket;
22
22
  url: URL | undefined;
23
- options: WsClientOptions;
23
+ options: WsClientOptions | undefined;
24
24
  private pendingRequests;
25
25
  private index;
26
26
  private authenticationToken;
package/lib/api/client.js CHANGED
@@ -25,7 +25,7 @@ export class WsClient extends Emittery {
25
25
  this.registerCloseListener(socket);
26
26
  this.socket = socket;
27
27
  this.url = url;
28
- this.options = options || {};
28
+ this.options = options;
29
29
  this.pendingRequests = {};
30
30
  this.index = 0;
31
31
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@holochain/client",
3
- "version": "0.20.0-dev.0",
3
+ "version": "0.20.0-dev.1",
4
4
  "description": "A JavaScript client for the Holochain Conductor API",
5
5
  "author": "Holochain Foundation <info@holochain.org> (https://holochain.org)",
6
6
  "license": "CAL-1.0",