@dxos/protocols 0.8.1-staging.391c573 → 0.8.1-staging.5be625a
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/cjs/src/edge-error.d.ts +26 -0
- package/dist/cjs/src/edge-error.d.ts.map +1 -0
- package/dist/cjs/src/edge-error.js +63 -0
- package/dist/cjs/src/edge-error.js.map +1 -0
- package/dist/cjs/src/edge.d.ts +25 -25
- package/dist/cjs/src/edge.d.ts.map +1 -1
- package/dist/cjs/src/edge.js +13 -57
- package/dist/cjs/src/edge.js.map +1 -1
- package/dist/cjs/src/index.d.ts +1 -0
- package/dist/cjs/src/index.d.ts.map +1 -1
- package/dist/cjs/src/index.js +1 -0
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/src/edge-error.d.ts +26 -0
- package/dist/esm/src/edge-error.d.ts.map +1 -0
- package/dist/esm/src/edge-error.js +62 -0
- package/dist/esm/src/edge-error.js.map +1 -0
- package/dist/esm/src/edge.d.ts +25 -25
- package/dist/esm/src/edge.d.ts.map +1 -1
- package/dist/esm/src/edge.js +12 -58
- package/dist/esm/src/edge.js.map +1 -1
- package/dist/esm/src/index.d.ts +1 -0
- package/dist/esm/src/index.d.ts.map +1 -1
- package/dist/esm/src/index.js +1 -0
- package/dist/esm/src/index.js.map +1 -1
- package/package.json +7 -7
- package/src/edge-error.ts +79 -0
- package/src/edge.ts +19 -71
- package/src/index.ts +1 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type EdgeErrorData, type EdgeHttpFailure } from './edge';
|
|
2
|
+
export declare class EdgeCallFailedError extends Error {
|
|
3
|
+
static fromProcessingFailureCause(cause: Error): EdgeCallFailedError;
|
|
4
|
+
static fromHttpFailure(response: Response): EdgeCallFailedError;
|
|
5
|
+
static fromUnsuccessfulResponse(response: Response, body: EdgeHttpFailure): EdgeCallFailedError;
|
|
6
|
+
readonly reason: string;
|
|
7
|
+
readonly errorData?: EdgeErrorData;
|
|
8
|
+
readonly isRetryable?: boolean;
|
|
9
|
+
readonly retryAfterMs?: number;
|
|
10
|
+
constructor(args: {
|
|
11
|
+
reason: string;
|
|
12
|
+
isRetryable?: boolean;
|
|
13
|
+
errorData?: EdgeErrorData;
|
|
14
|
+
retryAfterMs?: number;
|
|
15
|
+
cause?: Error;
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
export declare class EdgeAuthChallengeError extends EdgeCallFailedError {
|
|
19
|
+
readonly challenge: string;
|
|
20
|
+
constructor(challenge: string, errorData: EdgeErrorData);
|
|
21
|
+
}
|
|
22
|
+
export declare const createRetryableHttpFailure: (args: {
|
|
23
|
+
reason: any;
|
|
24
|
+
retryAfterSeconds: number;
|
|
25
|
+
}) => Response;
|
|
26
|
+
//# sourceMappingURL=edge-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edge-error.d.ts","sourceRoot":"","sources":["../../../src/edge-error.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAC;AAElE,qBAAa,mBAAoB,SAAQ,KAAK;WAC9B,0BAA0B,CAAC,KAAK,EAAE,KAAK;WAQvC,eAAe,CAAC,QAAQ,EAAE,QAAQ;WAQlC,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe;IAShF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;gBAEnB,IAAI,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,SAAS,CAAC,EAAE,aAAa,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf;CAOF;AAED,qBAAa,sBAAuB,SAAQ,mBAAmB;aAE3C,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM,EACjC,SAAS,EAAE,aAAa;CAI3B;AAOD,eAAO,MAAM,0BAA0B,SAAU;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,aAI1F,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2025 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createRetryableHttpFailure = exports.EdgeAuthChallengeError = exports.EdgeCallFailedError = void 0;
|
|
7
|
+
class EdgeCallFailedError extends Error {
|
|
8
|
+
static fromProcessingFailureCause(cause) {
|
|
9
|
+
return new EdgeCallFailedError({
|
|
10
|
+
reason: 'Error processing request.',
|
|
11
|
+
isRetryable: true,
|
|
12
|
+
cause,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
static fromHttpFailure(response) {
|
|
16
|
+
return new EdgeCallFailedError({
|
|
17
|
+
reason: `HTTP code ${response.status}: ${response.statusText}.`,
|
|
18
|
+
isRetryable: isRetryableCode(response.status),
|
|
19
|
+
retryAfterMs: getRetryAfterMillis(response),
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
static fromUnsuccessfulResponse(response, body) {
|
|
23
|
+
return new EdgeCallFailedError({
|
|
24
|
+
reason: body.reason,
|
|
25
|
+
errorData: body.errorData,
|
|
26
|
+
isRetryable: body.errorData == null && response.headers.has('Retry-After'),
|
|
27
|
+
retryAfterMs: getRetryAfterMillis(response),
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
constructor(args) {
|
|
31
|
+
super(args.reason, { cause: args.cause });
|
|
32
|
+
this.reason = args.reason;
|
|
33
|
+
this.errorData = args.errorData;
|
|
34
|
+
this.retryAfterMs = args.retryAfterMs;
|
|
35
|
+
this.isRetryable = Boolean(args.isRetryable);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.EdgeCallFailedError = EdgeCallFailedError;
|
|
39
|
+
class EdgeAuthChallengeError extends EdgeCallFailedError {
|
|
40
|
+
constructor(challenge, errorData) {
|
|
41
|
+
super({ reason: 'Auth challenge.', errorData, isRetryable: false });
|
|
42
|
+
this.challenge = challenge;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.EdgeAuthChallengeError = EdgeAuthChallengeError;
|
|
46
|
+
const getRetryAfterMillis = (response) => {
|
|
47
|
+
const retryAfter = Number(response.headers.get('Retry-After'));
|
|
48
|
+
return Number.isNaN(retryAfter) || retryAfter === 0 ? undefined : retryAfter * 1000;
|
|
49
|
+
};
|
|
50
|
+
const createRetryableHttpFailure = (args) => {
|
|
51
|
+
return new Response(JSON.stringify({ success: false, reason: args.reason }), {
|
|
52
|
+
headers: { 'Retry-After': String(args.retryAfterSeconds) },
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
exports.createRetryableHttpFailure = createRetryableHttpFailure;
|
|
56
|
+
const isRetryableCode = (status) => {
|
|
57
|
+
if (status === 501) {
|
|
58
|
+
// Not Implemented
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
return !(status >= 400 && status < 500);
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=edge-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edge-error.js","sourceRoot":"","sources":["../../../src/edge-error.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAIF,MAAa,mBAAoB,SAAQ,KAAK;IACrC,MAAM,CAAC,0BAA0B,CAAC,KAAY;QACnD,OAAO,IAAI,mBAAmB,CAAC;YAC7B,MAAM,EAAE,2BAA2B;YACnC,WAAW,EAAE,IAAI;YACjB,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,QAAkB;QAC9C,OAAO,IAAI,mBAAmB,CAAC;YAC7B,MAAM,EAAE,aAAa,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,GAAG;YAC/D,WAAW,EAAE,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7C,YAAY,EAAE,mBAAmB,CAAC,QAAQ,CAAC;SAC5C,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,wBAAwB,CAAC,QAAkB,EAAE,IAAqB;QAC9E,OAAO,IAAI,mBAAmB,CAAC;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YAC1E,YAAY,EAAE,mBAAmB,CAAC,QAAQ,CAAC;SAC5C,CAAC,CAAC;IACL,CAAC;IAOD,YAAY,IAMX;QACC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;CACF;AA5CD,kDA4CC;AAED,MAAa,sBAAuB,SAAQ,mBAAmB;IAC7D,YACkB,SAAiB,EACjC,SAAwB;QAExB,KAAK,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAHpD,cAAS,GAAT,SAAS,CAAQ;IAInC,CAAC;CACF;AAPD,wDAOC;AAED,MAAM,mBAAmB,GAAG,CAAC,QAAkB,EAAE,EAAE;IACjD,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/D,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;AACtF,CAAC,CAAC;AAEK,MAAM,0BAA0B,GAAG,CAAC,IAAgD,EAAE,EAAE;IAC7F,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE;QAC3E,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;KAC3D,CAAC,CAAC;AACL,CAAC,CAAC;AAJW,QAAA,0BAA0B,8BAIrC;AAEF,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;IACzC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,kBAAkB;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,CAAC;AAC1C,CAAC,CAAC"}
|
package/dist/cjs/src/edge.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Schema as S } from 'effect';
|
|
2
|
+
import { SpaceId } from '@dxos/keys';
|
|
2
3
|
export declare enum EdgeService {
|
|
3
4
|
AUTOMERGE_REPLICATOR = "automerge-replicator",
|
|
4
5
|
FEED_REPLICATOR = "feed-replicator",
|
|
@@ -114,32 +115,31 @@ export declare enum EdgeAgentStatus {
|
|
|
114
115
|
INACTIVE = "inactive",
|
|
115
116
|
NOT_FOUND = "not_found"
|
|
116
117
|
}
|
|
117
|
-
export declare class EdgeCallFailedError extends Error {
|
|
118
|
-
static fromProcessingFailureCause(cause: Error): EdgeCallFailedError;
|
|
119
|
-
static fromHttpFailure(response: Response): EdgeCallFailedError;
|
|
120
|
-
static fromUnsuccessfulResponse(response: Response, body: EdgeHttpFailure): EdgeCallFailedError;
|
|
121
|
-
readonly reason: string;
|
|
122
|
-
readonly errorData?: EdgeErrorData;
|
|
123
|
-
readonly isRetryable?: boolean;
|
|
124
|
-
readonly retryAfterMs?: number;
|
|
125
|
-
constructor(args: {
|
|
126
|
-
reason: string;
|
|
127
|
-
isRetryable?: boolean;
|
|
128
|
-
errorData?: EdgeErrorData;
|
|
129
|
-
retryAfterMs?: number;
|
|
130
|
-
cause?: Error;
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
export declare class EdgeAuthChallengeError extends EdgeCallFailedError {
|
|
134
|
-
readonly challenge: string;
|
|
135
|
-
constructor(challenge: string, errorData: EdgeErrorData);
|
|
136
|
-
}
|
|
137
118
|
export type EdgeAuthChallenge = {
|
|
138
119
|
type: 'auth_challenge';
|
|
139
120
|
challenge: string;
|
|
140
121
|
};
|
|
141
|
-
export declare
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
122
|
+
export declare enum OAuthProvider {
|
|
123
|
+
GOOGLE = "google"
|
|
124
|
+
}
|
|
125
|
+
export declare const InitiateOAuthFlowRequestSchema: S.Struct<{
|
|
126
|
+
provider: S.Enums<typeof OAuthProvider>;
|
|
127
|
+
spaceId: S.refine<string & {
|
|
128
|
+
__SpaceId: true;
|
|
129
|
+
}, S.Schema<string, string, never>>;
|
|
130
|
+
accessTokenId: typeof S.String;
|
|
131
|
+
scopes: S.mutable<S.Array$<typeof S.String>>;
|
|
132
|
+
}>;
|
|
133
|
+
export type InitiateOAuthFlowRequest = S.Schema.Type<typeof InitiateOAuthFlowRequestSchema>;
|
|
134
|
+
export type InitiateOAuthFlowResponse = {
|
|
135
|
+
authUrl: string;
|
|
136
|
+
};
|
|
137
|
+
export type OAuthFlowResult = {
|
|
138
|
+
success: true;
|
|
139
|
+
accessToken: string;
|
|
140
|
+
accessTokenId: string;
|
|
141
|
+
} | {
|
|
142
|
+
success: false;
|
|
143
|
+
reason: string;
|
|
144
|
+
};
|
|
145
145
|
//# sourceMappingURL=edge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../../src/edge.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../../src/edge.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/src/edge.js
CHANGED
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
// Copyright 2024 DXOS.org
|
|
4
4
|
//
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.InitiateOAuthFlowRequestSchema = exports.OAuthProvider = exports.EdgeAgentStatus = exports.EdgeService = void 0;
|
|
7
|
+
const effect_1 = require("effect");
|
|
8
|
+
const keys_1 = require("@dxos/keys");
|
|
7
9
|
// TODO(burdon): Rename EdgerRouterEndpoint?
|
|
8
10
|
var EdgeService;
|
|
9
11
|
(function (EdgeService) {
|
|
@@ -18,60 +20,14 @@ var EdgeAgentStatus;
|
|
|
18
20
|
EdgeAgentStatus["INACTIVE"] = "inactive";
|
|
19
21
|
EdgeAgentStatus["NOT_FOUND"] = "not_found";
|
|
20
22
|
})(EdgeAgentStatus || (exports.EdgeAgentStatus = EdgeAgentStatus = {}));
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
reason: `HTTP code ${response.status}: ${response.statusText}.`,
|
|
32
|
-
isRetryable: isRetryableCode(response.status),
|
|
33
|
-
retryAfterMs: getRetryAfterMillis(response),
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
static fromUnsuccessfulResponse(response, body) {
|
|
37
|
-
return new EdgeCallFailedError({
|
|
38
|
-
reason: body.reason,
|
|
39
|
-
errorData: body.errorData,
|
|
40
|
-
isRetryable: body.errorData == null && response.headers.has('Retry-After'),
|
|
41
|
-
retryAfterMs: getRetryAfterMillis(response),
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
constructor(args) {
|
|
45
|
-
super(args.reason, { cause: args.cause });
|
|
46
|
-
this.reason = args.reason;
|
|
47
|
-
this.errorData = args.errorData;
|
|
48
|
-
this.retryAfterMs = args.retryAfterMs;
|
|
49
|
-
this.isRetryable = Boolean(args.isRetryable);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
exports.EdgeCallFailedError = EdgeCallFailedError;
|
|
53
|
-
class EdgeAuthChallengeError extends EdgeCallFailedError {
|
|
54
|
-
constructor(challenge, errorData) {
|
|
55
|
-
super({ reason: 'Auth challenge.', errorData, isRetryable: false });
|
|
56
|
-
this.challenge = challenge;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
exports.EdgeAuthChallengeError = EdgeAuthChallengeError;
|
|
60
|
-
const getRetryAfterMillis = (response) => {
|
|
61
|
-
const retryAfter = Number(response.headers.get('Retry-After'));
|
|
62
|
-
return Number.isNaN(retryAfter) || retryAfter === 0 ? undefined : retryAfter * 1000;
|
|
63
|
-
};
|
|
64
|
-
const createRetryableHttpFailure = (args) => {
|
|
65
|
-
return new Response(JSON.stringify({ success: false, reason: args.reason }), {
|
|
66
|
-
headers: { 'Retry-After': String(args.retryAfterSeconds) },
|
|
67
|
-
});
|
|
68
|
-
};
|
|
69
|
-
exports.createRetryableHttpFailure = createRetryableHttpFailure;
|
|
70
|
-
const isRetryableCode = (status) => {
|
|
71
|
-
if (status === 501) {
|
|
72
|
-
// Not Implemented
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
return !(status >= 400 && status < 500);
|
|
76
|
-
};
|
|
23
|
+
var OAuthProvider;
|
|
24
|
+
(function (OAuthProvider) {
|
|
25
|
+
OAuthProvider["GOOGLE"] = "google";
|
|
26
|
+
})(OAuthProvider || (exports.OAuthProvider = OAuthProvider = {}));
|
|
27
|
+
exports.InitiateOAuthFlowRequestSchema = effect_1.Schema.Struct({
|
|
28
|
+
provider: effect_1.Schema.Enums(OAuthProvider),
|
|
29
|
+
spaceId: effect_1.Schema.String.pipe(effect_1.Schema.filter(keys_1.SpaceId.isValid)),
|
|
30
|
+
accessTokenId: effect_1.Schema.String,
|
|
31
|
+
scopes: effect_1.Schema.mutable(effect_1.Schema.Array(effect_1.Schema.String)),
|
|
32
|
+
});
|
|
77
33
|
//# sourceMappingURL=edge.js.map
|
package/dist/cjs/src/edge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge.js","sourceRoot":"","sources":["../../../src/edge.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;
|
|
1
|
+
{"version":3,"file":"edge.js","sourceRoot":"","sources":["../../../src/edge.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,mCAAqC;AAErC,qCAAqC;AAErC,4CAA4C;AAC5C,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,4DAA6C,CAAA;IAC7C,kDAAmC,CAAA;IACnC,8BAAe,CAAA;IACf,gCAAiB,CAAA;AACnB,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AA0HD,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;IACrB,0CAAuB,CAAA;AACzB,CAAC,EAJW,eAAe,+BAAf,eAAe,QAI1B;AAOD,IAAY,aAEX;AAFD,WAAY,aAAa;IACvB,kCAAiB,CAAA;AACnB,CAAC,EAFW,aAAa,6BAAb,aAAa,QAExB;AAEY,QAAA,8BAA8B,GAAG,eAAC,CAAC,MAAM,CAAC;IACrD,QAAQ,EAAE,eAAC,CAAC,KAAK,CAAC,aAAa,CAAC;IAChC,OAAO,EAAE,eAAC,CAAC,MAAM,CAAC,IAAI,CAAC,eAAC,CAAC,MAAM,CAAC,cAAO,CAAC,OAAO,CAAC,CAAC;IACjD,aAAa,EAAE,eAAC,CAAC,MAAM;IACvB,MAAM,EAAE,eAAC,CAAC,OAAO,CAAC,eAAC,CAAC,KAAK,CAAC,eAAC,CAAC,MAAM,CAAC,CAAC;CACrC,CAAC,CAAC"}
|
package/dist/cjs/src/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
|
package/dist/cjs/src/index.js
CHANGED
|
@@ -28,4 +28,5 @@ __exportStar(require("./automerge.js"), exports);
|
|
|
28
28
|
__exportStar(require("./edge.js"), exports);
|
|
29
29
|
__exportStar(require("./queue.js"), exports);
|
|
30
30
|
__exportStar(require("./space-archive.js"), exports);
|
|
31
|
+
__exportStar(require("./edge-error.js"), exports);
|
|
31
32
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,oDAAkC;AAClC,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,uDAAqC;AACrC,iDAA+B;AAC/B,4CAA0B;AAC1B,6CAA2B;AAC3B,qDAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,oDAAkC;AAClC,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B;AAC7B,6CAA2B;AAC3B,6CAA2B;AAC3B,uDAAqC;AACrC,iDAA+B;AAC/B,4CAA0B;AAC1B,6CAA2B;AAC3B,qDAAmC;AACnC,kDAAgC"}
|