@powersync/lib-services-framework 0.0.0-dev-20250117095455 → 0.0.0-dev-20250122110924
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/container.js +2 -1
- package/dist/container.js.map +1 -1
- package/dist/errors/errors-index.d.ts +1 -2
- package/dist/errors/errors-index.js +1 -2
- package/dist/errors/errors-index.js.map +1 -1
- package/dist/ip/lookup.js +6 -4
- package/dist/ip/lookup.js.map +1 -1
- package/package.json +3 -2
- package/dist/errors/framework-errors.d.ts +0 -51
- package/dist/errors/framework-errors.js +0 -111
- package/dist/errors/framework-errors.js.map +0 -1
- package/dist/errors/utils.d.ts +0 -4
- package/dist/errors/utils.js +0 -18
- package/dist/errors/utils.js.map +0 -1
package/dist/container.js
CHANGED
|
@@ -2,6 +2,7 @@ import _ from 'lodash';
|
|
|
2
2
|
import { NoOpReporter } from './alerts/no-op-reporter.js';
|
|
3
3
|
import { MigrationManager } from './migrations/MigrationManager.js';
|
|
4
4
|
import { createFSProbe, createTerminationHandler } from './signals/signals-index.js';
|
|
5
|
+
import { ServiceAssertionError } from '@powersync/service-errors';
|
|
5
6
|
export var ContainerImplementation;
|
|
6
7
|
(function (ContainerImplementation) {
|
|
7
8
|
ContainerImplementation["REPORTER"] = "reporter";
|
|
@@ -50,7 +51,7 @@ export class Container {
|
|
|
50
51
|
getImplementation(identifier) {
|
|
51
52
|
const implementation = this.implementations.get(identifier);
|
|
52
53
|
if (!implementation) {
|
|
53
|
-
throw new
|
|
54
|
+
throw new ServiceAssertionError(`Implementation for ${String(identifier)} has not been registered.`);
|
|
54
55
|
}
|
|
55
56
|
return implementation;
|
|
56
57
|
}
|
package/dist/container.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAmC,aAAa,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"container.js","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export * from '
|
|
2
|
-
export * from './utils.js';
|
|
1
|
+
export * from '@powersync/service-errors';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors-index.js","sourceRoot":"","sources":["../../src/errors/errors-index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"errors-index.js","sourceRoot":"","sources":["../../src/errors/errors-index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC"}
|
package/dist/ip/lookup.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as net from 'node:net';
|
|
2
2
|
import * as dnsp from 'node:dns/promises';
|
|
3
3
|
import ip from 'ipaddr.js';
|
|
4
|
+
import { ErrorCode, ServiceError } from '@powersync/service-errors';
|
|
4
5
|
/**
|
|
5
6
|
* Generate a custom DNS lookup function, that rejects specific IP ranges.
|
|
6
7
|
*
|
|
@@ -55,16 +56,17 @@ export function validateIpHostname(hostname, options) {
|
|
|
55
56
|
// Treat as a DNS name.
|
|
56
57
|
return;
|
|
57
58
|
}
|
|
58
|
-
const
|
|
59
|
+
const ipaddr = hostname;
|
|
60
|
+
const parsed = ip.parse(ipaddr);
|
|
59
61
|
const rejectLocal = reject_ranges.includes('local');
|
|
60
62
|
const rejectSubnets = reject_ranges.filter((range) => range != 'local');
|
|
61
63
|
const reject = { blocked: (rejectSubnets ?? []).map((r) => ip.parseCIDR(r)) };
|
|
62
64
|
if (options.reject_ipv6 && parsed.kind() == 'ipv6') {
|
|
63
|
-
throw new
|
|
65
|
+
throw new ServiceError(ErrorCode.PSYNC_S2202, 'IPv6 support not enabled for JWKS URI');
|
|
64
66
|
}
|
|
65
67
|
if (ip.subnetMatch(parsed, reject) == 'blocked') {
|
|
66
68
|
// Ranges explicitly blocked, e.g. private IPv6 ranges
|
|
67
|
-
throw new
|
|
69
|
+
throw new ServiceError(ErrorCode.PSYNC_S2203, `IPs in this range are not supported: ${ipaddr}`);
|
|
68
70
|
}
|
|
69
71
|
if (!rejectLocal) {
|
|
70
72
|
return;
|
|
@@ -79,7 +81,7 @@ export function validateIpHostname(hostname, options) {
|
|
|
79
81
|
}
|
|
80
82
|
else {
|
|
81
83
|
// Do not connect to any reserved IPs, including loopback and private ranges
|
|
82
|
-
throw new
|
|
84
|
+
throw new ServiceError(ErrorCode.PSYNC_S2203, `IPs in this range are not supported: ${ipaddr}`);
|
|
83
85
|
}
|
|
84
86
|
}
|
|
85
87
|
/**
|
package/dist/ip/lookup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/ip/lookup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../src/ip/lookup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,MAAM,WAAW,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAOpE;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAgB,EAChB,aAA4B;IAE5B,kBAAkB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC5C,OAAO,kBAAkB,CAAC,aAAa,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAA4B;IAC7D,IAAI,aAAa,CAAC,gBAAgB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;QAC7E,6CAA6C;QAC7C,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;QACrC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC;aAC/B,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE;YACxB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,QAAQ,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,QAAQ,CAAC,GAAG,EAAE,SAAgB,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,OAAsB;IACzE,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IACpD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,uBAAuB;QACvB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC;IAExB,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC;IAExE,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9E,IAAI,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,EAAE,CAAC;QACnD,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAChD,sDAAsD;QACtD,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,WAAW,EAAE,wCAAwC,MAAM,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3D,kBAAkB;QAClB,OAAO;IACT,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,SAAS,EAAE,CAAC;QAClE,kBAAkB;QAClB,OAAO;IACT,CAAC;SAAM,CAAC;QACN,4EAA4E;QAC5E,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,WAAW,EAAE,wCAAwC,MAAM,EAAE,CAAC,CAAC;IAClG,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB,EAAE,OAAsB;IACtE,IAAI,eAAkC,CAAC;IACvC,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,gCAAgC;QAChC,eAAe,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACrD,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,gCAAgC;QAChC,eAAe,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,wBAAwB;QACxB,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IACD,kBAAkB,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,eAAe,CAAC;AACzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@powersync/lib-services-framework",
|
|
3
3
|
"repository": "https://github.com/powersync-ja/powersync-service",
|
|
4
|
-
"version": "0.0.0-dev-
|
|
4
|
+
"version": "0.0.0-dev-20250122110924",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
"ts-codec": "^1.3.0",
|
|
24
24
|
"uuid": "^9.0.1",
|
|
25
25
|
"winston": "^3.13.0",
|
|
26
|
-
"zod": "^3.23.8"
|
|
26
|
+
"zod": "^3.23.8",
|
|
27
|
+
"@powersync/service-errors": "0.0.0-dev-20250122110924"
|
|
27
28
|
},
|
|
28
29
|
"devDependencies": {
|
|
29
30
|
"@types/lodash": "^4.17.5",
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
export declare enum ErrorSeverity {
|
|
2
|
-
INFO = "info",
|
|
3
|
-
WARNING = "warning",
|
|
4
|
-
ERROR = "error"
|
|
5
|
-
}
|
|
6
|
-
export type ErrorData = {
|
|
7
|
-
name?: string;
|
|
8
|
-
code: string;
|
|
9
|
-
description: string;
|
|
10
|
-
severity?: ErrorSeverity;
|
|
11
|
-
details?: string;
|
|
12
|
-
status?: number;
|
|
13
|
-
stack?: string;
|
|
14
|
-
origin?: string;
|
|
15
|
-
trace_id?: string;
|
|
16
|
-
};
|
|
17
|
-
export declare class JourneyError extends Error {
|
|
18
|
-
is_journey_error: boolean;
|
|
19
|
-
errorData: ErrorData;
|
|
20
|
-
static isJourneyError(input: any): input is JourneyError;
|
|
21
|
-
private static errorMessage;
|
|
22
|
-
constructor(data: ErrorData);
|
|
23
|
-
toString(): string | undefined;
|
|
24
|
-
toJSON(): ErrorData;
|
|
25
|
-
setTraceId(id: string): void;
|
|
26
|
-
}
|
|
27
|
-
export declare class ValidationError extends JourneyError {
|
|
28
|
-
static CODE: string;
|
|
29
|
-
constructor(errors: any);
|
|
30
|
-
}
|
|
31
|
-
export declare class AuthorizationError extends JourneyError {
|
|
32
|
-
static CODE: string;
|
|
33
|
-
constructor(errors: any);
|
|
34
|
-
}
|
|
35
|
-
export declare class InternalServerError extends JourneyError {
|
|
36
|
-
static CODE: string;
|
|
37
|
-
constructor(err: Error);
|
|
38
|
-
}
|
|
39
|
-
export declare class ResourceNotFound extends JourneyError {
|
|
40
|
-
static CODE: string;
|
|
41
|
-
/**
|
|
42
|
-
* @deprecated Use the (resource, id) constructor instead.
|
|
43
|
-
* @param id
|
|
44
|
-
*/
|
|
45
|
-
constructor(id: string);
|
|
46
|
-
constructor(resource: string, id: string);
|
|
47
|
-
}
|
|
48
|
-
export declare class ResourceConflict extends JourneyError {
|
|
49
|
-
static CODE: string;
|
|
50
|
-
constructor(details: string);
|
|
51
|
-
}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
export var ErrorSeverity;
|
|
2
|
-
(function (ErrorSeverity) {
|
|
3
|
-
ErrorSeverity["INFO"] = "info";
|
|
4
|
-
ErrorSeverity["WARNING"] = "warning";
|
|
5
|
-
ErrorSeverity["ERROR"] = "error";
|
|
6
|
-
})(ErrorSeverity || (ErrorSeverity = {}));
|
|
7
|
-
// Maybe this could be renamed to ServiceError or something similar
|
|
8
|
-
export class JourneyError extends Error {
|
|
9
|
-
static isJourneyError(input) {
|
|
10
|
-
return input instanceof JourneyError || input?.is_journey_error == true;
|
|
11
|
-
}
|
|
12
|
-
static errorMessage(data) {
|
|
13
|
-
let message = `[${data.code}] ${data.description}`;
|
|
14
|
-
if (data.details) {
|
|
15
|
-
message += `\n ${data.details}`;
|
|
16
|
-
}
|
|
17
|
-
return message;
|
|
18
|
-
}
|
|
19
|
-
constructor(data) {
|
|
20
|
-
super(JourneyError.errorMessage(data));
|
|
21
|
-
this.is_journey_error = true;
|
|
22
|
-
this.errorData = data;
|
|
23
|
-
if (data.stack) {
|
|
24
|
-
this.stack = data.stack;
|
|
25
|
-
}
|
|
26
|
-
this.name = data.name || this.constructor.name;
|
|
27
|
-
this.errorData.name = this.name;
|
|
28
|
-
}
|
|
29
|
-
toString() {
|
|
30
|
-
return this.stack;
|
|
31
|
-
}
|
|
32
|
-
toJSON() {
|
|
33
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
34
|
-
return this.errorData;
|
|
35
|
-
}
|
|
36
|
-
return {
|
|
37
|
-
name: this.errorData.name,
|
|
38
|
-
code: this.errorData.code,
|
|
39
|
-
status: this.errorData.status,
|
|
40
|
-
description: this.errorData.description,
|
|
41
|
-
details: this.errorData.details,
|
|
42
|
-
trace_id: this.errorData.trace_id,
|
|
43
|
-
severity: this.errorData.severity,
|
|
44
|
-
origin: this.errorData.origin
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
setTraceId(id) {
|
|
48
|
-
this.errorData.trace_id = id;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
export class ValidationError extends JourneyError {
|
|
52
|
-
constructor(errors) {
|
|
53
|
-
super({
|
|
54
|
-
code: ValidationError.CODE,
|
|
55
|
-
status: 400,
|
|
56
|
-
description: 'Validation failed',
|
|
57
|
-
details: JSON.stringify(errors)
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
ValidationError.CODE = 'VALIDATION_ERROR';
|
|
62
|
-
export class AuthorizationError extends JourneyError {
|
|
63
|
-
constructor(errors) {
|
|
64
|
-
super({
|
|
65
|
-
code: AuthorizationError.CODE,
|
|
66
|
-
status: 401,
|
|
67
|
-
description: 'Authorization failed',
|
|
68
|
-
details: errors
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
AuthorizationError.CODE = 'AUTHORIZATION';
|
|
73
|
-
export class InternalServerError extends JourneyError {
|
|
74
|
-
constructor(err) {
|
|
75
|
-
super({
|
|
76
|
-
code: InternalServerError.CODE,
|
|
77
|
-
severity: ErrorSeverity.ERROR,
|
|
78
|
-
status: 500,
|
|
79
|
-
description: 'Something went wrong',
|
|
80
|
-
details: err.message,
|
|
81
|
-
stack: process.env.NODE_ENV !== 'production' ? err.stack : undefined
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
InternalServerError.CODE = 'INTERNAL_SERVER_ERROR';
|
|
86
|
-
export class ResourceNotFound extends JourneyError {
|
|
87
|
-
constructor(resource, id) {
|
|
88
|
-
const combinedId = id ? `${resource}/${id}` : resource;
|
|
89
|
-
super({
|
|
90
|
-
code: ResourceNotFound.CODE,
|
|
91
|
-
status: 404,
|
|
92
|
-
description: 'The requested resource does not exist on this server',
|
|
93
|
-
details: `The resource ${combinedId} does not exist on this server`,
|
|
94
|
-
severity: ErrorSeverity.INFO
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
ResourceNotFound.CODE = 'RESOURCE_NOT_FOUND';
|
|
99
|
-
export class ResourceConflict extends JourneyError {
|
|
100
|
-
constructor(details) {
|
|
101
|
-
super({
|
|
102
|
-
code: ResourceConflict.CODE,
|
|
103
|
-
status: 409,
|
|
104
|
-
description: 'The specified resource already exists on this server',
|
|
105
|
-
details: details,
|
|
106
|
-
severity: ErrorSeverity.INFO
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
ResourceConflict.CODE = 'RESOURCE_CONFLICT';
|
|
111
|
-
//# sourceMappingURL=framework-errors.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"framework-errors.js","sourceRoot":"","sources":["../../src/errors/framework-errors.ts"],"names":[],"mappings":"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"}
|
package/dist/errors/utils.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { ErrorData, JourneyError } from './framework-errors.js';
|
|
2
|
-
export declare const isJourneyError: (err: any) => err is JourneyError;
|
|
3
|
-
export declare const getErrorData: (err: Error | any) => ErrorData | undefined;
|
|
4
|
-
export declare const matchesErrorCode: (err: Error | any, code: string) => boolean;
|
package/dist/errors/utils.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { JourneyError } from './framework-errors.js';
|
|
2
|
-
export const isJourneyError = (err) => {
|
|
3
|
-
const matches = JourneyError.isJourneyError(err);
|
|
4
|
-
return !!matches;
|
|
5
|
-
};
|
|
6
|
-
export const getErrorData = (err) => {
|
|
7
|
-
if (!isJourneyError(err)) {
|
|
8
|
-
return;
|
|
9
|
-
}
|
|
10
|
-
return err.toJSON();
|
|
11
|
-
};
|
|
12
|
-
export const matchesErrorCode = (err, code) => {
|
|
13
|
-
if (isJourneyError(err)) {
|
|
14
|
-
return err.errorData.code === code;
|
|
15
|
-
}
|
|
16
|
-
return false;
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=utils.js.map
|
package/dist/errors/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/errors/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAQ,EAAuB,EAAE;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACjD,OAAO,CAAC,CAAC,OAAO,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAgB,EAAyB,EAAE;IACtE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAgB,EAAE,IAAY,EAAE,EAAE;IACjE,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC;IACrC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
|