@fatagnus/dink-convex 2.9.2 → 2.9.3
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/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/keys.d.ts +53 -0
- package/dist/keys.d.ts.map +1 -1
- package/dist/keys.js +78 -2
- package/dist/keys.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -66,7 +66,7 @@ export { syncTriggers, registerSyncedTable, isSyncedTable, getSyncConfig, create
|
|
|
66
66
|
export { callEdge, scatterCall, discoverEdges, kickEdge, getEdgeRpcConfig, buildCallEdgeUrl, buildScatterCallUrl, buildDiscoverEdgesUrl, buildKickEdgeUrl, buildCallEdgePayload, buildScatterCallPayload, parseCallEdgeResponse, parseScatterCallResponse, parseDiscoverEdgesResponse, EdgeRpcError, EDGE_RPC_ERROR_CODES, type CallEdgeOptions, type ScatterCallOptions, type DiscoverEdgesOptions, type KickEdgeOptions, type CallEdgeResult, type ScatterCallResult, type ScatterCallResultItem, type EdgeInfo, type EdgeRpcConfig, } from "./edgeRpc.js";
|
|
67
67
|
export { registerReplicateComponent, hasReplicateComponent, getReplicateComponent, clearReplicateComponent, forwardToReplicate, type ReplicateComponent, type DeltaData, type ForwardContext, } from "./replicateBridge.js";
|
|
68
68
|
export { describeEdgeServices, getLLMContext, getIntrospectConfig, buildDescribeUrl, buildLLMContextUrl, parseDescribeResponse, parseLLMContextResponse, IntrospectError, INTROSPECT_ERROR_CODES, type ServiceDescriptor, type MethodDescriptor, type ServiceAIContext, type MethodAIContext, type IntrospectConfig, } from "./introspect.js";
|
|
69
|
-
export { createEdgeKey, listEdgeKeys, revokeEdgeKey, type KeyType, type KeyStatus, type KeyMetadata, type CreateEdgeKeyOptions, type RevokeEdgeKeyOptions, type CreateKeyResult, } from "./keys.js";
|
|
69
|
+
export { createEdgeKey, listEdgeKeys, revokeEdgeKey, deleteEdgeKey, DEFAULT_EDGE_SCOPES, AVAILABLE_EDGE_SCOPES, type KeyType, type KeyStatus, type KeyMetadata, type CreateEdgeKeyOptions, type RevokeEdgeKeyOptions, type CreateKeyResult, } from "./keys.js";
|
|
70
70
|
export declare const VERSION = "2.4.0";
|
|
71
71
|
export type { SyncedTableConfig } from "./schema.js";
|
|
72
72
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAGH,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,KAAK,YAAY,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAG1E,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,6BAA6B,EAC7B,sCAAsC,EACtC,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,mCAAmC,EACnC,kBAAkB,EAClB,8BAA8B,EAC9B,cAAc,EACd,KAAK,eAAe,GACrB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,WAAW,CAAC;AAGnB,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAGH,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,KAAK,YAAY,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAG1E,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,6BAA6B,EAC7B,sCAAsC,EACtC,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,mCAAmC,EACnC,kBAAkB,EAClB,8BAA8B,EAC9B,cAAc,EACd,KAAK,eAAe,GACrB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,WAAW,CAAC;AAGnB,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -75,7 +75,7 @@ export { registerReplicateComponent, hasReplicateComponent, getReplicateComponen
|
|
|
75
75
|
// Introspection helpers
|
|
76
76
|
export { describeEdgeServices, getLLMContext, getIntrospectConfig, buildDescribeUrl, buildLLMContextUrl, parseDescribeResponse, parseLLMContextResponse, IntrospectError, INTROSPECT_ERROR_CODES, } from "./introspect.js";
|
|
77
77
|
// Key management helpers
|
|
78
|
-
export { createEdgeKey, listEdgeKeys, revokeEdgeKey, } from "./keys.js";
|
|
78
|
+
export { createEdgeKey, listEdgeKeys, revokeEdgeKey, deleteEdgeKey, DEFAULT_EDGE_SCOPES, AVAILABLE_EDGE_SCOPES, } from "./keys.js";
|
|
79
79
|
// Component version
|
|
80
80
|
export const VERSION = "2.4.0";
|
|
81
81
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAErB,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GAEpB,MAAM,WAAW,CAAC;AAEnB,gFAAgF;AAChF,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,GAOhB,MAAM,oBAAoB,CAAC;AAE5B,sEAAsE;AACtE,OAAO,EAAE,kBAAkB,EAAwB,MAAM,gBAAgB,CAAC;AAE1E,+CAA+C;AAC/C,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,6BAA6B,EAC7B,sCAAsC,EACtC,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,mCAAmC,EACnC,kBAAkB,EAClB,8BAA8B,EAC9B,cAAc,GAEf,MAAM,eAAe,CAAC;AAEvB,2BAA2B;AAC3B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,oBAAoB,GAUrB,MAAM,cAAc,CAAC;AAEtB,2BAA2B;AAC3B,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,GAInB,MAAM,sBAAsB,CAAC;AAE9B,wBAAwB;AACxB,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,GAMvB,MAAM,iBAAiB,CAAC;AAEzB,yBAAyB;AACzB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,aAAa,CAAC;AAErB,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GAEpB,MAAM,WAAW,CAAC;AAEnB,gFAAgF;AAChF,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,GAOhB,MAAM,oBAAoB,CAAC;AAE5B,sEAAsE;AACtE,OAAO,EAAE,kBAAkB,EAAwB,MAAM,gBAAgB,CAAC;AAE1E,+CAA+C;AAC/C,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,6BAA6B,EAC7B,sCAAsC,EACtC,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,mCAAmC,EACnC,kBAAkB,EAClB,8BAA8B,EAC9B,cAAc,GAEf,MAAM,eAAe,CAAC;AAEvB,2BAA2B;AAC3B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,oBAAoB,GAUrB,MAAM,cAAc,CAAC;AAEtB,2BAA2B;AAC3B,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,GAInB,MAAM,sBAAsB,CAAC;AAE9B,wBAAwB;AACxB,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,GAMvB,MAAM,iBAAiB,CAAC;AAEzB,yBAAyB;AACzB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,qBAAqB,GAOtB,MAAM,WAAW,CAAC;AAEnB,oBAAoB;AACpB,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
|
package/dist/keys.d.ts
CHANGED
|
@@ -50,6 +50,38 @@ export interface KeyMetadata {
|
|
|
50
50
|
/** Reason for revocation (if revoked) */
|
|
51
51
|
revokeReason?: string;
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Default scopes for edge keys
|
|
55
|
+
*/
|
|
56
|
+
export declare const DEFAULT_EDGE_SCOPES: readonly ["edge:connect", "services:register", "services:expose"];
|
|
57
|
+
/**
|
|
58
|
+
* All available scopes for edge keys
|
|
59
|
+
*/
|
|
60
|
+
export declare const AVAILABLE_EDGE_SCOPES: readonly [{
|
|
61
|
+
readonly value: "edge:connect";
|
|
62
|
+
readonly label: "Connect";
|
|
63
|
+
readonly description: "Connect as an edge agent";
|
|
64
|
+
}, {
|
|
65
|
+
readonly value: "services:register";
|
|
66
|
+
readonly label: "Register Services";
|
|
67
|
+
readonly description: "Register services with dinkd";
|
|
68
|
+
}, {
|
|
69
|
+
readonly value: "services:expose";
|
|
70
|
+
readonly label: "Expose Services";
|
|
71
|
+
readonly description: "Expose services for RPC calls";
|
|
72
|
+
}, {
|
|
73
|
+
readonly value: "rpc:call";
|
|
74
|
+
readonly label: "RPC Call";
|
|
75
|
+
readonly description: "Make RPC calls to other edges";
|
|
76
|
+
}, {
|
|
77
|
+
readonly value: "presence:read";
|
|
78
|
+
readonly label: "Read Presence";
|
|
79
|
+
readonly description: "Read presence information";
|
|
80
|
+
}, {
|
|
81
|
+
readonly value: "presence:write";
|
|
82
|
+
readonly label: "Write Presence";
|
|
83
|
+
readonly description: "Update presence information";
|
|
84
|
+
}];
|
|
53
85
|
/**
|
|
54
86
|
* Options for creating an edge key
|
|
55
87
|
*/
|
|
@@ -58,6 +90,11 @@ export interface CreateEdgeKeyOptions {
|
|
|
58
90
|
name: string;
|
|
59
91
|
/** Edge ID (optional, auto-generated if not provided) */
|
|
60
92
|
edgeId?: string;
|
|
93
|
+
/**
|
|
94
|
+
* Scopes to grant to this key (optional).
|
|
95
|
+
* If not provided, uses default edge scopes: edge:connect, services:register, services:expose
|
|
96
|
+
*/
|
|
97
|
+
scopes?: string[];
|
|
61
98
|
/** Labels to attach to the key */
|
|
62
99
|
labels?: Record<string, string>;
|
|
63
100
|
/**
|
|
@@ -126,6 +163,22 @@ export declare function createEdgeKey(_ctx: ActionCtx, options: CreateEdgeKeyOpt
|
|
|
126
163
|
* ```
|
|
127
164
|
*/
|
|
128
165
|
export declare function listEdgeKeys(_ctx: ActionCtx): Promise<KeyMetadata[]>;
|
|
166
|
+
/**
|
|
167
|
+
* Delete a revoked edge key permanently.
|
|
168
|
+
*
|
|
169
|
+
* Only revoked keys can be deleted. Active keys must be revoked first.
|
|
170
|
+
*
|
|
171
|
+
* @param _ctx - Convex action context
|
|
172
|
+
* @param keyId - The key ID to delete
|
|
173
|
+
* @throws EdgeRpcError if configuration is missing, key is not found, key is still active, or request fails
|
|
174
|
+
*
|
|
175
|
+
* @example
|
|
176
|
+
* ```typescript
|
|
177
|
+
* // Delete a revoked key
|
|
178
|
+
* await deleteEdgeKey(ctx, 'key-123');
|
|
179
|
+
* ```
|
|
180
|
+
*/
|
|
181
|
+
export declare function deleteEdgeKey(_ctx: ActionCtx, keyId: string): Promise<void>;
|
|
129
182
|
/**
|
|
130
183
|
* Revoke an edge key.
|
|
131
184
|
*
|
package/dist/keys.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH;;GAEG;AACH,UAAU,SAAS;CAElB;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,CAAC;AAEzF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,4BAA4B;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,gCAAgC;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,mBAAmB;IACnB,GAAG,EAAE,WAAW,CAAC;IACjB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAgED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH;;GAEG;AACH,UAAU,SAAS;CAElB;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,CAAC;AAEzF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,4BAA4B;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,gCAAgC;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,mEAItB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAOxB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,mBAAmB;IACnB,GAAG,EAAE,WAAW,CAAC;IACjB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAgED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,eAAe,CAAC,CAuE1B;AAiBD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,WAAW,EAAE,CAAC,CAyCxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CA2Df;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,MAAM,GAAG,oBAAoB,EAC7C,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA+Gf"}
|
package/dist/keys.js
CHANGED
|
@@ -7,6 +7,25 @@
|
|
|
7
7
|
* @module keys
|
|
8
8
|
*/
|
|
9
9
|
import { getEdgeRpcConfig, EdgeRpcError, EDGE_RPC_ERROR_CODES } from "./edgeRpc.js";
|
|
10
|
+
/**
|
|
11
|
+
* Default scopes for edge keys
|
|
12
|
+
*/
|
|
13
|
+
export const DEFAULT_EDGE_SCOPES = [
|
|
14
|
+
'edge:connect',
|
|
15
|
+
'services:register',
|
|
16
|
+
'services:expose',
|
|
17
|
+
];
|
|
18
|
+
/**
|
|
19
|
+
* All available scopes for edge keys
|
|
20
|
+
*/
|
|
21
|
+
export const AVAILABLE_EDGE_SCOPES = [
|
|
22
|
+
{ value: 'edge:connect', label: 'Connect', description: 'Connect as an edge agent' },
|
|
23
|
+
{ value: 'services:register', label: 'Register Services', description: 'Register services with dinkd' },
|
|
24
|
+
{ value: 'services:expose', label: 'Expose Services', description: 'Expose services for RPC calls' },
|
|
25
|
+
{ value: 'rpc:call', label: 'RPC Call', description: 'Make RPC calls to other edges' },
|
|
26
|
+
{ value: 'presence:read', label: 'Read Presence', description: 'Read presence information' },
|
|
27
|
+
{ value: 'presence:write', label: 'Write Presence', description: 'Update presence information' },
|
|
28
|
+
];
|
|
10
29
|
// ============================================================================
|
|
11
30
|
// URL builders
|
|
12
31
|
// ============================================================================
|
|
@@ -73,12 +92,21 @@ function parseKeyMetadata(raw) {
|
|
|
73
92
|
*/
|
|
74
93
|
export async function createEdgeKey(_ctx, options) {
|
|
75
94
|
const config = validateConfig();
|
|
95
|
+
// Use provided scopes or default edge scopes
|
|
96
|
+
const scopes = options.scopes && options.scopes.length > 0
|
|
97
|
+
? options.scopes
|
|
98
|
+
: [...DEFAULT_EDGE_SCOPES];
|
|
76
99
|
const payload = {
|
|
77
100
|
name: options.name,
|
|
78
101
|
type: 'edge',
|
|
79
102
|
edge_id: options.edgeId || '',
|
|
80
|
-
scopes
|
|
81
|
-
scope_bundle:
|
|
103
|
+
scopes,
|
|
104
|
+
scope_bundle: scopes.length === 3 &&
|
|
105
|
+
scopes.includes('edge:connect') &&
|
|
106
|
+
scopes.includes('services:register') &&
|
|
107
|
+
scopes.includes('services:expose')
|
|
108
|
+
? 'bundle:edge'
|
|
109
|
+
: undefined,
|
|
82
110
|
labels: options.labels || {},
|
|
83
111
|
};
|
|
84
112
|
const url = buildKeysUrl(config.dinkUrl, 'create');
|
|
@@ -162,6 +190,54 @@ export async function listEdgeKeys(_ctx) {
|
|
|
162
190
|
}
|
|
163
191
|
return (json.data.keys || []).map(parseKeyMetadata);
|
|
164
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Delete a revoked edge key permanently.
|
|
195
|
+
*
|
|
196
|
+
* Only revoked keys can be deleted. Active keys must be revoked first.
|
|
197
|
+
*
|
|
198
|
+
* @param _ctx - Convex action context
|
|
199
|
+
* @param keyId - The key ID to delete
|
|
200
|
+
* @throws EdgeRpcError if configuration is missing, key is not found, key is still active, or request fails
|
|
201
|
+
*
|
|
202
|
+
* @example
|
|
203
|
+
* ```typescript
|
|
204
|
+
* // Delete a revoked key
|
|
205
|
+
* await deleteEdgeKey(ctx, 'key-123');
|
|
206
|
+
* ```
|
|
207
|
+
*/
|
|
208
|
+
export async function deleteEdgeKey(_ctx, keyId) {
|
|
209
|
+
const config = validateConfig();
|
|
210
|
+
const payload = {
|
|
211
|
+
key_id: keyId,
|
|
212
|
+
};
|
|
213
|
+
const url = buildKeysUrl(config.dinkUrl, 'delete');
|
|
214
|
+
const response = await fetch(url, {
|
|
215
|
+
method: "POST",
|
|
216
|
+
headers: {
|
|
217
|
+
"Content-Type": "application/json",
|
|
218
|
+
Authorization: `Bearer ${config.appSyncKey}`,
|
|
219
|
+
},
|
|
220
|
+
body: JSON.stringify(payload),
|
|
221
|
+
});
|
|
222
|
+
if (response.status === 401) {
|
|
223
|
+
throw new EdgeRpcError(EDGE_RPC_ERROR_CODES.UNAUTHORIZED, "Invalid authorization token");
|
|
224
|
+
}
|
|
225
|
+
if (response.status === 404) {
|
|
226
|
+
throw new EdgeRpcError(EDGE_RPC_ERROR_CODES.EDGE_NOT_FOUND, `Key not found: ${keyId}`);
|
|
227
|
+
}
|
|
228
|
+
if (response.status === 400) {
|
|
229
|
+
const errorText = await response.text().catch(() => "");
|
|
230
|
+
throw new EdgeRpcError(EDGE_RPC_ERROR_CODES.SERVER_ERROR, `Cannot delete key: ${errorText}`);
|
|
231
|
+
}
|
|
232
|
+
if (!response.ok) {
|
|
233
|
+
const errorText = await response.text().catch(() => "");
|
|
234
|
+
throw new EdgeRpcError(EDGE_RPC_ERROR_CODES.SERVER_ERROR, `Failed to delete key: ${response.status} ${response.statusText} - ${errorText}`);
|
|
235
|
+
}
|
|
236
|
+
const json = await response.json();
|
|
237
|
+
if (!json.success) {
|
|
238
|
+
throw new EdgeRpcError(EDGE_RPC_ERROR_CODES.SERVER_ERROR, json.error || "Failed to delete key");
|
|
239
|
+
}
|
|
240
|
+
}
|
|
165
241
|
/**
|
|
166
242
|
* Revoke an edge key.
|
|
167
243
|
*
|
package/dist/keys.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../src/keys.ts"],"names":[],"mappings":"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"}
|