@omniviewdev/runtime 0.12.0 → 0.13.0
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/api.cjs +1 -1
- package/dist/api.js +1 -1
- package/dist/bindings/events/index.d.ts +4 -0
- package/dist/bindings/github.com/omniviewdev/omniview/backend/pkg/plugin/resource/index.d.ts +1 -1
- package/dist/bindings/github.com/omniviewdev/omniview/backend/pkg/plugin/resource/models.d.ts +20 -0
- package/dist/bindings/github.com/omniviewdev/omniview/backend/pkg/plugin/resource/servicewrapper.d.ts +2 -0
- package/dist/bindings/github.com/omniviewdev/plugin-sdk/pkg/resource/v2/index.d.ts +2 -2
- package/dist/bindings/github.com/omniviewdev/plugin-sdk/pkg/resource/v2/models.d.ts +47 -1
- package/dist/connection/metadata.d.ts +42 -0
- package/dist/hooks/connection/index.d.ts +2 -0
- package/dist/hooks/connection/useConnectionMetadata.d.ts +16 -0
- package/dist/index.cjs +4 -4
- package/dist/index.js +2018 -1805
- package/dist/resource/v2/client.d.ts +3 -0
- package/dist/{servicewrapper-Bda7yi8z.js → servicewrapper-BhxHs5DR.js} +283 -279
- package/dist/servicewrapper-CNtZecKV.cjs +1 -0
- package/package.json +3 -3
- package/dist/servicewrapper-BOM6A8IG.cjs +0 -1
package/dist/api.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./servicewrapper-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./servicewrapper-CNtZecKV.cjs"),i=require("./index-BVi9X4oU.cjs"),c=require("./models-dzj-SsFZ.cjs"),n=require("./calls-B-HP1Icv.cjs");function v(t,e){return n.ByID(1112300727,t,e)}function T(t){return n.ByID(3545575747,t)}function b(){return n.ByID(973353934).then(t=>G(t))}function F(){return n.ByID(3274001154).then(t=>N(t))}function w(){return n.ByID(1957733758).then(t=>x(t))}function O(){return n.ByID(3570265771).then(t=>J(t))}function C(){return n.ByID(338269344).then(t=>q(t))}function _(t){return n.ByID(2544305887,t).then(e=>Z(e))}function A(t,e){return n.ByID(1042852749,t,e)}function P(){return n.ByID(3071199936)}function j(t){return n.ByID(2852029597,t)}function L(t){return n.ByID(2119350976,t)}function M(t,e,r){return n.ByID(1507504662,t,e,r)}function E(t){return n.ByID(4286704285,t)}function R(t,e){return n.ByID(323373508,t,e)}function $(t){return n.ByID(2912056327,t)}function k(t,e,r){return n.ByID(3748367702,t,e,r)}const G=c.ConfigView.createFrom,N=c.Status.createFrom,V=c.ConnectionPolicyView.createFrom,x=i.Array(V),z=c.PendingConfirmation.createFrom,J=i.Array(z),U=c.PresetView.createFrom,q=i.Array(U),W=c.ToolView.createFrom,Z=i.Array(W),H=Object.freeze(Object.defineProperty({__proto__:null,ApplyPreset:v,DeleteUserPreset:T,GetConfig:b,GetStatus:F,ListConnectionPolicies:w,ListPendingConfirmations:O,ListPresets:C,ListTools:_,ResolveConfirmation:A,RotateToken:P,SaveUserPreset:j,SetBlockConnectionsByDefault:L,SetConnectionAccess:M,SetEnabled:E,SetPluginEnabled:R,SetPort:$,SetToolOverride:k},Symbol.toStringTag,{value:"Module"}));function K(t){return n.ByID(3503478684,t)}const Q=Object.freeze(Object.defineProperty({__proto__:null,DetectLanguage:K},Symbol.toStringTag,{value:"Module"}));function X(t,e){return n.ByID(2691208406,t,e)}function Y(t,e){return n.ByID(3932965591,t,e)}function ee(t,e){return n.ByID(1686862755,t,e)}function te(t,e,r){return n.ByID(3705442919,t,e,r)}function ne(t){return n.ByID(3024854267,t)}function re(t){return n.ByID(3423289677,t)}function ie(t){return n.ByID(158417611,t)}function oe(t){return n.ByID(3413815733,t)}function se(t,e){return n.ByID(2047870999,t,e)}const ae=Object.freeze(Object.defineProperty({__proto__:null,Debug:X,Error:Y,Info:ee,Log:te,ReadLog:ne,ReportStartupReady:re,StartTail:ie,StopTail:oe,Warn:se},Symbol.toStringTag,{value:"Module"}));function ce(t){return n.ByID(584261046,t)}function ue(t){return n.ByID(3098255555,t)}function le(t){return n.ByID(903698361,t)}function pe(t,e,r){return n.ByID(1235170530,t,e,r).then(s=>ve(s))}function ye(t){return n.ByID(3199298309,t)}function fe(t){return n.ByID(2822783534,t).then(e=>d(e))}function De(){return n.ByID(914742443).then(t=>be(t))}function he(){return n.ByID(3392737293).then(t=>Fe(t))}function de(t,e,r){return n.ByID(1474486628,t,e,r)}function ge(t,e,r){return n.ByID(2366942716,t,e,r)}function Ie(t){return n.ByID(4008581935,t)}function Se(t,e,r){return n.ByID(958877691,t,e,r)}function me(t,e,r){return n.ByID(1772958861,t,e,r)}function Be(t,e,r){return n.ByID(728919203,t,e,r)}const ve=c.DropResult.createFrom,d=i.Map(i.Any,i.Any),Te=c.Info.createFrom,be=i.Array(Te),Fe=i.Map(i.Any,d),we=Object.freeze(Object.defineProperty({__proto__:null,BeginDrag:ce,CancelDrag:ue,Close:le,EndDrag:pe,Focus:ye,GetState:fe,List:De,ListStates:he,MoveDrag:de,MoveToPointer:ge,Open:Ie,ReportViewport:Se,RespondDrop:me,SaveState:Be},Symbol.toStringTag,{value:"Module"}));function Oe(t,e){return n.ByID(712656304,t,e).then(r=>$e(r))}function Ce(t){return n.ByID(4153226260,t).then(e=>u(e))}function _e(t){return n.ByID(1859413816,t)}function Ae(){return n.ByID(2707386443).then(t=>ke(t))}function Pe(t){return n.ByID(2381063937,t)}function je(t){return n.ByID(123659362,t).then(e=>u(e))}function Le(t){return n.ByID(709599671,t).then(e=>u(e))}function Me(t,e){return n.ByID(2105869281,t,e).then(r=>u(r))}function Ee(t){return n.ByID(1371062537,t)}const Re=c.LogEntry.createFrom,$e=i.Array(Re),u=c.DevServerState.createFrom,ke=i.Array(u),Ge=Object.freeze(Object.defineProperty({__proto__:null,GetDevServerLogs:Oe,GetDevServerState:Ce,IsManaged:_e,ListDevServerStates:Ae,RebuildPlugin:Pe,RestartDevServer:je,StartDevServer:Le,StartDevServerForPath:Me,StopDevServer:Ee},Symbol.toStringTag,{value:"Module"}));function Ne(t,e){return n.ByID(1867216983,t,e).then(r=>g(r))}function Ve(){return n.ByID(3418650705).then(t=>qe(t))}function xe(t,e){return n.ByID(4138610615,t,e).then(r=>g(r))}function ze(t){return n.ByID(3055914536,t)}function Je(t){return n.ByID(1502487629,t)}const Ue=c.LogEntry$1.createFrom,g=i.Array(Ue),qe=i.Array(i.Any),We=Object.freeze(Object.defineProperty({__proto__:null,GetLogs:Ne,ListStreams:Ve,SearchLogs:xe,Subscribe:ze,Unsubscribe:Je},Symbol.toStringTag,{value:"Module"}));class l{browser;vite;hmr;mcp;control;health;constructor(e={}){"browser"in e||(this.browser=null),"vite"in e||(this.vite=null),"hmr"in e||(this.hmr=null),"mcp"in e||(this.mcp=null),"control"in e||(this.control=null),"health"in e||(this.health=null),Object.assign(this,e)}static createFrom(e={}){let r=typeof e=="string"?JSON.parse(e):e;return new l(r)}}class y{code;message;details;constructor(e={}){"code"in e||(this.code=""),"message"in e||(this.message=""),Object.assign(this,e)}static createFrom(e={}){const r=Ze;let s=typeof e=="string"?JSON.parse(e):e;return"details"in s&&(s.details=r(s.details)),new y(s)}}class f{schemaVersion;workspaceID;instanceID;generation;kind;channel;displayName;stateRoot;process;version;commit;repositories;endpoints;plugins;readiness;lastError;startedAt;constructor(e={}){"schemaVersion"in e||(this.schemaVersion=0),"workspaceID"in e||(this.workspaceID=""),"instanceID"in e||(this.instanceID=""),"generation"in e||(this.generation=""),"kind"in e||(this.kind=""),"channel"in e||(this.channel=""),"displayName"in e||(this.displayName=""),"stateRoot"in e||(this.stateRoot=""),"process"in e||(this.process=new p),"version"in e||(this.version=""),"commit"in e||(this.commit=""),"repositories"in e||(this.repositories=[]),"endpoints"in e||(this.endpoints=new l),"plugins"in e||(this.plugins=[]),"readiness"in e||(this.readiness=""),"startedAt"in e||(this.startedAt="0001-01-01T00:00:00.000Z"),Object.assign(this,e)}static createFrom(e={}){const r=He,s=Qe,S=Xe,m=et,B=I;let o=typeof e=="string"?JSON.parse(e):e;return"process"in o&&(o.process=r(o.process)),"repositories"in o&&(o.repositories=s(o.repositories)),"endpoints"in o&&(o.endpoints=S(o.endpoints)),"plugins"in o&&(o.plugins=m(o.plugins)),"lastError"in o&&(o.lastError=B(o.lastError)),new f(o)}}class D{id;version;source;generation;mode;buildStatus;viteStatus;rpcStatus;controllerStatus;operationID;lastError;constructor(e={}){"id"in e||(this.id=""),"version"in e||(this.version=""),"source"in e||(this.source=""),"generation"in e||(this.generation=""),"mode"in e||(this.mode=""),"buildStatus"in e||(this.buildStatus=""),"viteStatus"in e||(this.viteStatus=""),"rpcStatus"in e||(this.rpcStatus=""),"controllerStatus"in e||(this.controllerStatus=""),Object.assign(this,e)}static createFrom(e={}){const r=I;let s=typeof e=="string"?JSON.parse(e):e;return"lastError"in s&&(s.lastError=r(s.lastError)),new D(s)}}class p{pid;startIdentity;executable;workspaceID;generation;role;source;constructor(e={}){"pid"in e||(this.pid=0),"startIdentity"in e||(this.startIdentity=""),"executable"in e||(this.executable=""),"workspaceID"in e||(this.workspaceID=""),"generation"in e||(this.generation=""),"role"in e||(this.role=""),Object.assign(this,e)}static createFrom(e={}){let r=typeof e=="string"?JSON.parse(e):e;return new p(r)}}class h{id;path;ref;commit;constructor(e={}){"id"in e||(this.id=""),"path"in e||(this.path=""),"ref"in e||(this.ref=""),"commit"in e||(this.commit=""),Object.assign(this,e)}static createFrom(e={}){let r=typeof e=="string"?JSON.parse(e):e;return new h(r)}}const Ze=i.Map(i.Any,i.Any),He=p.createFrom,Ke=h.createFrom,Qe=i.Array(Ke),Xe=l.createFrom,Ye=D.createFrom,et=i.Array(Ye),tt=y.createFrom,I=i.Nullable(tt);function nt(){return n.ByID(678226073).then(t=>at(t))}function rt(){return n.ByID(1706570792)}function it(t){return n.ByID(2957909098,t).then(e=>ct(e))}function ot(t){return n.ByID(473489213,t)}function st(t,e){return n.ByID(3778694836,t,e)}const at=f.createFrom,ct=i.Array(i.Any);exports.DataClient=a.servicewrapper;exports.ExecClient=a.exec;exports.GraphClient=a.graphClient;exports.LogsClient=a.logs;exports.MetricClient=a.metric;exports.NetworkerClient=a.networker;exports.PluginManager=a.servicewrapper$1;exports.ResourceClient=a.client;exports.SettingsClient=a.servicewrapper$2;exports.SettingsProvider=a.servicewrapper$3;exports.UIClient=a.servicewrapper$4;exports.DevServerManager=Ge;exports.DiagnosticsClient=ae;exports.GetInstanceInfo=nt;exports.GetOperatingSystem=rt;exports.McpRelayClient=H;exports.OpenFileSelectionDialog=it;exports.PluginLogManager=We;exports.SaveFileDialog=ot;exports.UtilsClient=Q;exports.WindowClient=we;exports.WriteFileContent=st;
|
package/dist/api.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { s as Ce, e as _e, g as Pe, l as Ie, m as Le, n as je, a as Ee, c as Me, b as Re, d as ke, f as Ne } from "./servicewrapper-
|
|
1
|
+
import { s as Ce, e as _e, g as Pe, l as Ie, m as Le, n as je, a as Ee, c as Me, b as Re, d as ke, f as Ne } from "./servicewrapper-BhxHs5DR.js";
|
|
2
2
|
import { A as s, M as f, a, N as D } from "./index-zyAgCXOO.js";
|
|
3
3
|
import { C as F, S as O, a as w, P as C, b as _, T as P, D as I, I as L, c as j, L as E, d as M } from "./models-Cg1YRHQm.js";
|
|
4
4
|
import { B as n } from "./calls-DYGtxNJ6.js";
|
|
@@ -150,6 +150,10 @@ export declare const PluginUpdateError = "plugin/update_error";
|
|
|
150
150
|
* Name of the custom event "plugin/update_started".
|
|
151
151
|
*/
|
|
152
152
|
export declare const PluginUpdateStarted = "plugin/update_started";
|
|
153
|
+
/**
|
|
154
|
+
* Name of the custom event "resource/connection/metadata".
|
|
155
|
+
*/
|
|
156
|
+
export declare const ResourceConnectionMetadata = "resource/connection/metadata";
|
|
153
157
|
/**
|
|
154
158
|
* Name of the custom event "settings/changed".
|
|
155
159
|
*/
|
package/dist/bindings/github.com/omniviewdev/omniview/backend/pkg/plugin/resource/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as GraphService from "./graphservice.js";
|
|
2
2
|
import * as ServiceWrapper from "./servicewrapper.js";
|
|
3
3
|
export { GraphService, ServiceWrapper };
|
|
4
|
-
export { ActionEventDTO, ActionSnapshot, AuthorityEvidence, ConnectionProfile, ConnectionProfileResult, ConnectionState, ConnectionStatusPayload, HostEnumerateRequest, HostGetRequest, HostRecord, HostSourcePage, HostSubscription, HostWatchStateEvent, ResolveReferenceRequest, ResolveTargetRequest, ResolvedReference, ResolvedTarget, SourcePageMetadata } from './models.js';
|
|
4
|
+
export { ActionEventDTO, ActionSnapshot, AuthorityEvidence, ConnectionProfile, ConnectionProfileResult, ConnectionState, ConnectionStatusPayload, HostConnectionMetadata, HostEnumerateRequest, HostGetRequest, HostRecord, HostSourcePage, HostSubscription, HostWatchStateEvent, ResolveReferenceRequest, ResolveTargetRequest, ResolvedReference, ResolvedTarget, SourcePageMetadata } from './models.js';
|
package/dist/bindings/github.com/omniviewdev/omniview/backend/pkg/plugin/resource/models.d.ts
CHANGED
|
@@ -120,6 +120,26 @@ export declare class ConnectionStatusPayload {
|
|
|
120
120
|
*/
|
|
121
121
|
static createFrom($$source?: any): ConnectionStatusPayload;
|
|
122
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* HostConnectionMetadata adds transport identity without changing SDK-owned facts.
|
|
125
|
+
* A provider-wide event omits ConnectionID and Snapshot.
|
|
126
|
+
*/
|
|
127
|
+
export declare class HostConnectionMetadata {
|
|
128
|
+
"pluginID": string;
|
|
129
|
+
"registrationID": string;
|
|
130
|
+
"supported": boolean;
|
|
131
|
+
"transportAvailable": boolean;
|
|
132
|
+
"connectionID"?: string;
|
|
133
|
+
"revision"?: string;
|
|
134
|
+
"snapshot"?: resourcev2$0.ConnectionMetadataSnapshot | null;
|
|
135
|
+
"removed"?: boolean;
|
|
136
|
+
/** Creates a new HostConnectionMetadata instance. */
|
|
137
|
+
constructor($$source?: Partial<HostConnectionMetadata>);
|
|
138
|
+
/**
|
|
139
|
+
* Creates a new HostConnectionMetadata instance from a string or object.
|
|
140
|
+
*/
|
|
141
|
+
static createFrom($$source?: any): HostConnectionMetadata;
|
|
142
|
+
}
|
|
123
143
|
export declare class HostEnumerateRequest {
|
|
124
144
|
"targetId": string;
|
|
125
145
|
"request": resourcev2$0.EnumerateRequest;
|
|
@@ -16,6 +16,7 @@ export declare function GetAllConnectionStates(): $CancellablePromise<{
|
|
|
16
16
|
[_ in string]?: $models.ConnectionState[];
|
|
17
17
|
}>;
|
|
18
18
|
export declare function GetConnection(pluginID: string, connectionID: string): $CancellablePromise<types$0.Connection>;
|
|
19
|
+
export declare function GetConnectionMetadata(pluginID: string, connectionID: string): $CancellablePromise<$models.HostConnectionMetadata>;
|
|
19
20
|
export declare function GetEditorSchemas(pluginID: string, route: resourcev2$0.AccessRoute): $CancellablePromise<resourcev2$0.EditorSchema[]>;
|
|
20
21
|
export declare function GetHealth(pluginID: string, encoded: string): $CancellablePromise<resourcev2$0.ResourceHealth | null>;
|
|
21
22
|
export declare function GetRelationships(pluginID: string, route: resourcev2$0.AccessRoute, resourceType: string): $CancellablePromise<resourcev2$0.RelationshipDescriptor[]>;
|
|
@@ -36,6 +37,7 @@ export declare function ListPlugins(): $CancellablePromise<string[]>;
|
|
|
36
37
|
export declare function LoadConnections(pluginID: string): $CancellablePromise<types$0.Connection[]>;
|
|
37
38
|
export declare function Mutate(pluginID: string, encoded: string): $CancellablePromise<resourcev2$0.Record>;
|
|
38
39
|
export declare function NativeQuery(pluginID: string, encoded: string): $CancellablePromise<$models.HostSourcePage>;
|
|
40
|
+
export declare function RefreshConnectionMetadata(pluginID: string, connectionID: string): $CancellablePromise<$models.HostConnectionMetadata>;
|
|
39
41
|
export declare function RemoveConnection(pluginID: string, connectionID: string): $CancellablePromise<void>;
|
|
40
42
|
export declare function ResetConnectionProfile(pluginID: string, connectionID: string): $CancellablePromise<$models.ConnectionProfileResult>;
|
|
41
43
|
export declare function ResolveReference(pluginID: string, request: $models.ResolveReferenceRequest): $CancellablePromise<$models.ResolvedReference>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { AccessRoute, ActionDescriptor, ActionScope, CatalogRequest, ColumnDefinition, Count, EdgeDirection, EditorSchema, EnumerateRequest, EventSeverity, Feature, FeatureSet, GetRequest, HealthCondition, HealthStatus, ReadTarget, Record, RelationshipDescriptor, RelationshipExtractor, RelationshipTarget, RelationshipType, Representation, ResolvedRelationship, ResourceDefinition, ResourceEvent, ResourceGroup, ResourceHealth, ResourceLink, ResourceOperationError, ResourceReference, SchemaDocument, SchemaDocumentReference, ScopeEntry, ScopeExtractor, WatchConnectionSummary, WatchState } from './models.js';
|
|
2
|
-
export type { Catalog, Coverage, QueryScope, ResourceAddress, Schema, SchemaBinding, Value } from './models.js';
|
|
1
|
+
export { AccessRoute, ActionDescriptor, ActionScope, CatalogRequest, ColumnDefinition, ConnectionMetadataError, ConnectionMetadataSnapshot, Count, EdgeDirection, EditorSchema, EnumerateRequest, EventSeverity, Feature, FeatureSet, GetRequest, HealthCondition, HealthStatus, ReadTarget, Record, RelationshipDescriptor, RelationshipExtractor, RelationshipTarget, RelationshipType, Representation, ResolvedRelationship, ResourceDefinition, ResourceEvent, ResourceGroup, ResourceHealth, ResourceLink, ResourceOperationError, ResourceReference, SchemaDocument, SchemaDocumentReference, ScopeEntry, ScopeExtractor, WatchConnectionSummary, WatchState } from './models.js';
|
|
2
|
+
export type { Catalog, ConnectionMetadataEntry, Coverage, QueryScope, ResourceAddress, Schema, SchemaBinding, Value } from './models.js';
|
|
@@ -108,6 +108,48 @@ export declare class ColumnDefinition {
|
|
|
108
108
|
*/
|
|
109
109
|
static createFrom($$source?: any): ColumnDefinition;
|
|
110
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* ConnectionMetadataEntry is current, stale, or unavailable. Current and stale
|
|
113
|
+
* entries always serialize value, including null, false, zero, and empty strings.
|
|
114
|
+
* Unavailable entries omit value and observedAt and require a public-safe error.
|
|
115
|
+
*/
|
|
116
|
+
export type ConnectionMetadataEntry = any;
|
|
117
|
+
/**
|
|
118
|
+
* ConnectionMetadataError contains only bounded, public-safe classification and text.
|
|
119
|
+
* Providers must sanitize these fields before returning observations.
|
|
120
|
+
*/
|
|
121
|
+
export declare class ConnectionMetadataError {
|
|
122
|
+
"code": string;
|
|
123
|
+
"message": string;
|
|
124
|
+
/** Creates a new ConnectionMetadataError instance. */
|
|
125
|
+
constructor($$source?: Partial<ConnectionMetadataError>);
|
|
126
|
+
/**
|
|
127
|
+
* Creates a new ConnectionMetadataError instance from a string or object.
|
|
128
|
+
*/
|
|
129
|
+
static createFrom($$source?: any): ConnectionMetadataError;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* ConnectionMetadataSnapshot is the authoritative state for one connection.
|
|
133
|
+
* An inactive inventory entry may have an empty generation. Revisions are positive
|
|
134
|
+
* canonical unsigned decimal strings and continue across generation changes.
|
|
135
|
+
*/
|
|
136
|
+
export declare class ConnectionMetadataSnapshot {
|
|
137
|
+
"connectionID": string;
|
|
138
|
+
"generation": string;
|
|
139
|
+
"revision": string;
|
|
140
|
+
"active": boolean;
|
|
141
|
+
"refreshing": boolean;
|
|
142
|
+
"lastRefreshError"?: ConnectionMetadataError | null;
|
|
143
|
+
"entries": {
|
|
144
|
+
[_ in string]?: ConnectionMetadataEntry;
|
|
145
|
+
};
|
|
146
|
+
/** Creates a new ConnectionMetadataSnapshot instance. */
|
|
147
|
+
constructor($$source?: Partial<ConnectionMetadataSnapshot>);
|
|
148
|
+
/**
|
|
149
|
+
* Creates a new ConnectionMetadataSnapshot instance from a string or object.
|
|
150
|
+
*/
|
|
151
|
+
static createFrom($$source?: any): ConnectionMetadataSnapshot;
|
|
152
|
+
}
|
|
111
153
|
/**
|
|
112
154
|
* Count distinguishes unknown cardinality from an observed zero. Unknown requires
|
|
113
155
|
* nil Value; exact and estimate require a canonical unsigned 64-bit decimal string.
|
|
@@ -265,7 +307,11 @@ export declare enum Feature {
|
|
|
265
307
|
/**
|
|
266
308
|
* FeatureBestEffortUpdates enables advisory updates without replay guarantees.
|
|
267
309
|
*/
|
|
268
|
-
FeatureBestEffortUpdates = "bestEffortUpdates"
|
|
310
|
+
FeatureBestEffortUpdates = "bestEffortUpdates",
|
|
311
|
+
/**
|
|
312
|
+
* FeatureConnectionMetadata enables public connection facts and refresh.
|
|
313
|
+
*/
|
|
314
|
+
FeatureConnectionMetadata = "connectionMetadata"
|
|
269
315
|
}
|
|
270
316
|
/**
|
|
271
317
|
* FeatureSet lists ancillary traits available on this provider or transport.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export type ConnectionMetadataValue = null | boolean | number | string | ConnectionMetadataValue[] | {
|
|
2
|
+
[key: string]: ConnectionMetadataValue;
|
|
3
|
+
};
|
|
4
|
+
export interface ConnectionMetadataError {
|
|
5
|
+
code: string;
|
|
6
|
+
message: string;
|
|
7
|
+
}
|
|
8
|
+
export type ConnectionMetadataEntry = {
|
|
9
|
+
state: 'current';
|
|
10
|
+
value: ConnectionMetadataValue;
|
|
11
|
+
observedAt: string;
|
|
12
|
+
} | {
|
|
13
|
+
state: 'stale';
|
|
14
|
+
value: ConnectionMetadataValue;
|
|
15
|
+
observedAt: string;
|
|
16
|
+
error?: ConnectionMetadataError;
|
|
17
|
+
} | {
|
|
18
|
+
state: 'unavailable';
|
|
19
|
+
error: ConnectionMetadataError;
|
|
20
|
+
};
|
|
21
|
+
export interface ConnectionMetadataSnapshot {
|
|
22
|
+
connectionID: string;
|
|
23
|
+
generation: string;
|
|
24
|
+
revision: string;
|
|
25
|
+
active: boolean;
|
|
26
|
+
refreshing: boolean;
|
|
27
|
+
lastRefreshError?: ConnectionMetadataError;
|
|
28
|
+
entries: Record<string, ConnectionMetadataEntry>;
|
|
29
|
+
}
|
|
30
|
+
/** Host registration identity is opaque and never numerically ordered. */
|
|
31
|
+
export interface ConnectionMetadataEnvelope {
|
|
32
|
+
pluginID: string;
|
|
33
|
+
registrationID: string;
|
|
34
|
+
supported: boolean;
|
|
35
|
+
transportAvailable: boolean;
|
|
36
|
+
snapshot?: ConnectionMetadataSnapshot;
|
|
37
|
+
removed?: boolean;
|
|
38
|
+
connectionID?: string;
|
|
39
|
+
revision?: string;
|
|
40
|
+
}
|
|
41
|
+
/** Safe for decisions: stale, inactive, unavailable, and non-string facts are excluded. */
|
|
42
|
+
export declare function readCurrentConnectionMetadataString(snapshot: ConnectionMetadataSnapshot | undefined, transportAvailable: boolean, key: string): string | undefined;
|
|
@@ -7,3 +7,5 @@ export * from './useConnectionReadiness';
|
|
|
7
7
|
export { requireConnectionReady, withConnectionReady } from '../../connection/connectionReadiness';
|
|
8
8
|
export { ConnectionBoundary, ConnectionBoundaryFallback } from '../../connection/ConnectionBoundary';
|
|
9
9
|
export type { ConnectionBoundaryProps, ConnectionBoundaryFallbackProps } from '../../connection/ConnectionBoundary';
|
|
10
|
+
export * from './useConnectionMetadata';
|
|
11
|
+
export * from '../../connection/metadata';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ConnectionMetadataSnapshot } from '../../connection/metadata';
|
|
2
|
+
export interface ConnectionMetadataState {
|
|
3
|
+
supported: boolean | undefined;
|
|
4
|
+
transportAvailable: boolean;
|
|
5
|
+
snapshot?: ConnectionMetadataSnapshot;
|
|
6
|
+
isLoading: boolean;
|
|
7
|
+
error?: unknown;
|
|
8
|
+
}
|
|
9
|
+
/** Reading subscribes and fetches only; it never connects or acquires observations. */
|
|
10
|
+
export declare function useConnectionMetadata(explicitPluginID: string | undefined, connectionID: string | undefined): ConnectionMetadataState & {
|
|
11
|
+
refresh: () => Promise<void>;
|
|
12
|
+
};
|
|
13
|
+
/** Subscribe to a dynamic connection inventory without invoking hooks in a loop. */
|
|
14
|
+
export declare function useConnectionMetadataConnections(explicitPluginID: string | undefined, connectionIDs: readonly string[]): ReadonlyMap<string, ConnectionMetadataState>;
|
|
15
|
+
/** Select shared state with Object.is equality; unrelated entry changes do not rerender consumers. */
|
|
16
|
+
export declare function useConnectionMetadataSelector<T>(explicitPluginID: string | undefined, connectionID: string | undefined, selector: (state: ConnectionMetadataState) => T): T;
|