@dxos/protocols 0.6.12-main.78ddbdf → 0.6.12-main.89e9959

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.
Files changed (49) hide show
  1. package/dist/cjs/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +2 -1
  2. package/dist/cjs/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts.map +1 -1
  3. package/dist/cjs/src/buf/proto/gen/dxos/edge/messenger_pb.js.map +1 -1
  4. package/dist/cjs/src/edge.d.ts +44 -0
  5. package/dist/cjs/src/edge.d.ts.map +1 -1
  6. package/dist/cjs/src/edge.js +15 -1
  7. package/dist/cjs/src/edge.js.map +1 -1
  8. package/dist/cjs/src/{params.d.ts → invitation.d.ts} +2 -2
  9. package/dist/cjs/src/invitation.d.ts.map +1 -0
  10. package/dist/cjs/src/invitation.js +14 -0
  11. package/dist/cjs/src/invitation.js.map +1 -0
  12. package/dist/cjs/src/proto/gen/dxos/edge/messenger.d.ts +2 -0
  13. package/dist/cjs/src/proto/gen/dxos/edge/messenger.d.ts.map +1 -1
  14. package/dist/cjs/src/proto/gen/dxos/edge/messenger.js.map +1 -1
  15. package/dist/cjs/src/proto/gen/index.d.ts.map +1 -1
  16. package/dist/cjs/src/proto/gen/index.js +1 -1
  17. package/dist/cjs/src/proto/gen/index.js.map +1 -1
  18. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  19. package/dist/esm/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +2 -1
  20. package/dist/esm/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts.map +1 -1
  21. package/dist/esm/src/buf/proto/gen/dxos/edge/messenger_pb.js.map +1 -1
  22. package/dist/esm/src/edge.d.ts +44 -0
  23. package/dist/esm/src/edge.d.ts.map +1 -1
  24. package/dist/esm/src/edge.js +15 -0
  25. package/dist/esm/src/edge.js.map +1 -1
  26. package/dist/esm/src/{params.d.ts → invitation.d.ts} +2 -2
  27. package/dist/esm/src/invitation.d.ts.map +1 -0
  28. package/dist/esm/src/invitation.js +11 -0
  29. package/dist/esm/src/invitation.js.map +1 -0
  30. package/dist/esm/src/proto/gen/dxos/edge/messenger.d.ts +2 -0
  31. package/dist/esm/src/proto/gen/dxos/edge/messenger.d.ts.map +1 -1
  32. package/dist/esm/src/proto/gen/dxos/edge/messenger.js.map +1 -1
  33. package/dist/esm/src/proto/gen/index.d.ts.map +1 -1
  34. package/dist/esm/src/proto/gen/index.js +1 -1
  35. package/dist/esm/src/proto/gen/index.js.map +1 -1
  36. package/package.json +7 -7
  37. package/src/buf/proto/gen/dxos/edge/messenger_pb.ts +2 -1
  38. package/src/edge.ts +54 -0
  39. package/src/invitation.ts +12 -0
  40. package/src/proto/dxos/edge/messenger.proto +2 -1
  41. package/src/proto/gen/dxos/edge/messenger.ts +2 -0
  42. package/src/proto/gen/index.ts +1 -1
  43. package/dist/cjs/src/params.d.ts.map +0 -1
  44. package/dist/cjs/src/params.js +0 -15
  45. package/dist/cjs/src/params.js.map +0 -1
  46. package/dist/esm/src/params.d.ts.map +0 -1
  47. package/dist/esm/src/params.js +0 -12
  48. package/dist/esm/src/params.js.map +0 -1
  49. package/src/params.ts +0 -14
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/proto/gen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAiEhE,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAokBhD,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,i7iHAAi7iH,CAAC,CAAC,CAAC;AAC1+iH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAkB,UAAU,EAAE,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/proto/gen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAiEhE,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAokBhD,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,shjHAAshjH,CAAC,CAAC,CAAC;AAC/kjH,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAkB,UAAU,EAAE,aAAa,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/protocols",
3
- "version": "0.6.12-main.78ddbdf",
3
+ "version": "0.6.12-main.89e9959",
4
4
  "description": "Protobuf definitions for DXOS protocols.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -71,12 +71,12 @@
71
71
  ],
72
72
  "dependencies": {
73
73
  "@bufbuild/protobuf": "^2.1.0",
74
- "@effect/schema": "^0.67.16",
75
- "@dxos/codec-protobuf": "0.6.12-main.78ddbdf",
76
- "@dxos/keys": "0.6.12-main.78ddbdf",
77
- "@dxos/timeframe": "0.6.12-main.78ddbdf",
78
- "@dxos/invariant": "0.6.12-main.78ddbdf",
79
- "@dxos/util": "0.6.12-main.78ddbdf"
74
+ "@dxos/effect": "0.6.12-main.89e9959",
75
+ "@dxos/invariant": "0.6.12-main.89e9959",
76
+ "@dxos/codec-protobuf": "0.6.12-main.89e9959",
77
+ "@dxos/keys": "0.6.12-main.89e9959",
78
+ "@dxos/timeframe": "0.6.12-main.89e9959",
79
+ "@dxos/util": "0.6.12-main.89e9959"
80
80
  },
81
81
  "devDependencies": {
82
82
  "@bufbuild/buf": "^1.43.0",
@@ -83,7 +83,8 @@ export type Message = Message$1<"dxos.edge.messenger.Message"> & {
83
83
  target: Peer[];
84
84
 
85
85
  /**
86
- * TODO(burdon): Routing info.
86
+ * / List of valid services is defined in the `EdgeService` enum.
87
+ * / Maybe be used to address a service at EDGE, but also to address components inside the client.
87
88
  *
88
89
  * @generated from field: optional string service_id = 20;
89
90
  */
package/src/edge.ts CHANGED
@@ -8,3 +8,57 @@ export enum EdgeService {
8
8
  SWARM_SERVICE_ID = 'swarm',
9
9
  SIGNAL_SERVICE_ID = 'signal',
10
10
  }
11
+
12
+ export type EdgeHttpSuccess<T> = {
13
+ success: true;
14
+ data: T;
15
+ };
16
+
17
+ export type EdgeErrorData = { type: string } & Record<string, any>;
18
+
19
+ export type EdgeHttpFailure = {
20
+ success: false;
21
+ /**
22
+ * An explanation of why the call failed. Used mostly for logging and monitoring.
23
+ */
24
+ reason: string;
25
+ /**
26
+ * Information that can be used to retry the request such that it will succeed, for example:
27
+ * 1. { type: 'auth_required', challenge: string }
28
+ * Requires retrying the request with challenge signature included.
29
+ * 2. { type: 'user_confirmation_required', dialog: { title: string, message: string, confirmation_payload: string } }
30
+ * Requires showing a confirmation dialog to a user and retrying the request with confirmation_payload included
31
+ * if the user confirms.
32
+ * When errorData is returned simply retrying the request won't have any effect.
33
+ * EdgeHttpClient should parse well-known errorData into Error types and throw.
34
+ */
35
+ errorData?: EdgeErrorData;
36
+ };
37
+
38
+ export type EdgeHttpResponse<T> = EdgeHttpSuccess<T> | EdgeHttpFailure;
39
+
40
+ export type GetNotarizationResponseBody = {
41
+ awaitingNotarization: { credentials: string[] };
42
+ };
43
+
44
+ export type PostNotarizationRequestBody = {
45
+ credentials: string[];
46
+ };
47
+
48
+ export class EdgeCallFailedError extends Error {
49
+ public static fromProcessingFailureCause(cause: Error) {
50
+ return new EdgeCallFailedError('Error processing request.', undefined, cause);
51
+ }
52
+
53
+ public static fromFailureResponse(response: { status: number; statusText: string }) {
54
+ return new EdgeCallFailedError(`HTTP code ${response.status}: ${response.statusText}.`);
55
+ }
56
+
57
+ constructor(
58
+ readonly reason: string,
59
+ readonly errorData?: EdgeErrorData,
60
+ cause?: Error,
61
+ ) {
62
+ super(reason, { cause });
63
+ }
64
+ }
@@ -0,0 +1,12 @@
1
+ //
2
+ // Copyright 2024 DXOS.org
3
+ //
4
+
5
+ import { ParamKeyAnnotation, S } from '@dxos/effect';
6
+
7
+ // TODO(burdon): Use uniformly for processing HTTP params.
8
+ export const InvitationUrl = S.Struct({
9
+ accessToken: S.String, // TODO(burdon): Remove.
10
+ deviceInvitationCode: S.String.pipe(ParamKeyAnnotation({ key: 'deviceInvitationCode' })),
11
+ spaceInvitationCode: S.String.pipe(ParamKeyAnnotation({ key: 'spaceInvitationCode' })),
12
+ });
@@ -41,7 +41,8 @@ message Message {
41
41
  optional Peer source = 10;
42
42
  repeated Peer target = 11;
43
43
 
44
- // TODO(burdon): Routing info.
44
+ /// List of valid services is defined in the `EdgeService` enum.
45
+ /// Maybe be used to address a service at EDGE, but also to address components inside the client.
45
46
  optional string service_id = 20;
46
47
 
47
48
  optional google.protobuf.Any payload = 100;
@@ -97,6 +97,8 @@ export interface Message {
97
97
  source?: Peer;
98
98
  target?: Peer[];
99
99
  /**
100
+ * Maybe be used to address a service at EDGE, but also to address components inside the client.
101
+ *
100
102
  * Options:
101
103
  * - proto3_optional = true
102
104
  */