@thomasfosterau/effect-parse 0.0.0-stage → 0.0.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/LICENSE +21 -0
- package/README.md +550 -2
- package/dist/Ascii.d.ts +392 -0
- package/dist/Ascii.d.ts.map +1 -0
- package/dist/Ascii.js +610 -0
- package/dist/Ascii.js.map +1 -0
- package/dist/Binary.d.ts +153 -0
- package/dist/Binary.d.ts.map +1 -0
- package/dist/Binary.js +171 -0
- package/dist/Binary.js.map +1 -0
- package/dist/Bits.d.ts +60 -0
- package/dist/Bits.d.ts.map +1 -0
- package/dist/Bits.js +144 -0
- package/dist/Bits.js.map +1 -0
- package/dist/Encoding.d.ts +116 -0
- package/dist/Encoding.d.ts.map +1 -0
- package/dist/Encoding.js +85 -0
- package/dist/Encoding.js.map +1 -0
- package/dist/Expression.d.ts +124 -0
- package/dist/Expression.d.ts.map +1 -0
- package/dist/Expression.js +139 -0
- package/dist/Expression.js.map +1 -0
- package/dist/Input.d.ts +301 -0
- package/dist/Input.d.ts.map +1 -0
- package/dist/Input.js +312 -0
- package/dist/Input.js.map +1 -0
- package/dist/Nom.d.ts +518 -0
- package/dist/Nom.d.ts.map +1 -0
- package/dist/Nom.js +519 -0
- package/dist/Nom.js.map +1 -0
- package/dist/ParseError.d.ts +120 -0
- package/dist/ParseError.d.ts.map +1 -0
- package/dist/ParseError.js +301 -0
- package/dist/ParseError.js.map +1 -0
- package/dist/Parser.d.ts +1312 -0
- package/dist/Parser.d.ts.map +1 -0
- package/dist/Parser.js +1936 -0
- package/dist/Parser.js.map +1 -0
- package/dist/ParserSchema.d.ts +31 -0
- package/dist/ParserSchema.d.ts.map +1 -0
- package/dist/ParserSchema.js +56 -0
- package/dist/ParserSchema.js.map +1 -0
- package/dist/ParserStream.d.ts +127 -0
- package/dist/ParserStream.d.ts.map +1 -0
- package/dist/ParserStream.js +270 -0
- package/dist/ParserStream.js.map +1 -0
- package/dist/Text.d.ts +330 -0
- package/dist/Text.d.ts.map +1 -0
- package/dist/Text.js +529 -0
- package/dist/Text.js.map +1 -0
- package/dist/Token.d.ts +225 -0
- package/dist/Token.d.ts.map +1 -0
- package/dist/Token.js +294 -0
- package/dist/Token.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/compiler/closure.d.ts +25 -0
- package/dist/internal/compiler/closure.d.ts.map +1 -0
- package/dist/internal/compiler/closure.js +1668 -0
- package/dist/internal/compiler/closure.js.map +1 -0
- package/dist/internal/compiler/entries.d.ts +19 -0
- package/dist/internal/compiler/entries.d.ts.map +1 -0
- package/dist/internal/compiler/entries.js +32 -0
- package/dist/internal/compiler/entries.js.map +1 -0
- package/dist/internal/compiler/first.d.ts +33 -0
- package/dist/internal/compiler/first.d.ts.map +1 -0
- package/dist/internal/compiler/first.js +235 -0
- package/dist/internal/compiler/first.js.map +1 -0
- package/dist/internal/compiler/jit.d.ts +20 -0
- package/dist/internal/compiler/jit.d.ts.map +1 -0
- package/dist/internal/compiler/jit.js +1030 -0
- package/dist/internal/compiler/jit.js.map +1 -0
- package/dist/internal/compiler/registry.d.ts +34 -0
- package/dist/internal/compiler/registry.d.ts.map +1 -0
- package/dist/internal/compiler/registry.js +46 -0
- package/dist/internal/compiler/registry.js.map +1 -0
- package/dist/internal/compiler/sets.d.ts +29 -0
- package/dist/internal/compiler/sets.d.ts.map +1 -0
- package/dist/internal/compiler/sets.js +85 -0
- package/dist/internal/compiler/sets.js.map +1 -0
- package/dist/internal/entries.d.ts +27 -0
- package/dist/internal/entries.d.ts.map +1 -0
- package/dist/internal/entries.js +42 -0
- package/dist/internal/entries.js.map +1 -0
- package/dist/internal/node.d.ts +251 -0
- package/dist/internal/node.d.ts.map +1 -0
- package/dist/internal/node.js +73 -0
- package/dist/internal/node.js.map +1 -0
- package/dist/internal/numbers.d.ts +41 -0
- package/dist/internal/numbers.d.ts.map +1 -0
- package/dist/internal/numbers.js +302 -0
- package/dist/internal/numbers.js.map +1 -0
- package/dist/internal/resume.d.ts +39 -0
- package/dist/internal/resume.d.ts.map +1 -0
- package/dist/internal/resume.js +37 -0
- package/dist/internal/resume.js.map +1 -0
- package/dist/internal/text.d.ts +72 -0
- package/dist/internal/text.d.ts.map +1 -0
- package/dist/internal/text.js +391 -0
- package/dist/internal/text.js.map +1 -0
- package/dist/internal/tokens.d.ts +93 -0
- package/dist/internal/tokens.d.ts.map +1 -0
- package/dist/internal/tokens.js +400 -0
- package/dist/internal/tokens.js.map +1 -0
- package/package.json +115 -3
- package/src/Ascii.ts +741 -0
- package/src/Binary.ts +228 -0
- package/src/Bits.ts +192 -0
- package/src/Encoding.ts +128 -0
- package/src/Expression.ts +245 -0
- package/src/Input.ts +429 -0
- package/src/Nom.ts +642 -0
- package/src/ParseError.ts +378 -0
- package/src/Parser.ts +2763 -0
- package/src/ParserSchema.ts +87 -0
- package/src/ParserStream.ts +390 -0
- package/src/Text.ts +757 -0
- package/src/Token.ts +416 -0
- package/src/index.ts +16 -0
- package/src/internal/compiler/closure.ts +1583 -0
- package/src/internal/compiler/entries.ts +36 -0
- package/src/internal/compiler/first.ts +252 -0
- package/src/internal/compiler/jit.ts +1091 -0
- package/src/internal/compiler/registry.ts +79 -0
- package/src/internal/compiler/sets.ts +100 -0
- package/src/internal/entries.ts +51 -0
- package/src/internal/node.ts +207 -0
- package/src/internal/numbers.ts +291 -0
- package/src/internal/resume.ts +55 -0
- package/src/internal/text.ts +411 -0
- package/src/internal/tokens.ts +409 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Parser.js","sourceRoot":"","sources":["../src/Parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as Schema from "effect/Schema";
|
|
2
|
+
import type { Parser } from "./Parser.js";
|
|
3
|
+
/**
|
|
4
|
+
* Options for {@link make}.
|
|
5
|
+
*
|
|
6
|
+
* @since 0.1.0
|
|
7
|
+
* @category models
|
|
8
|
+
*/
|
|
9
|
+
export interface Options<A> {
|
|
10
|
+
/** Prints a value back to a string. Without it, encoding fails. */
|
|
11
|
+
readonly encode?: ((value: A) => string) | undefined;
|
|
12
|
+
/** A description of the decoded type, used by schema tooling. */
|
|
13
|
+
readonly description?: string | undefined;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A schema decoding strings with a parser.
|
|
17
|
+
*
|
|
18
|
+
* @since 0.1.0
|
|
19
|
+
* @category models
|
|
20
|
+
*/
|
|
21
|
+
export interface ParserSchema<A> extends Schema.decodeTo<Schema.declare<A>, Schema.String> {
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Creates a schema that decodes a string with `parser`, which must consume
|
|
25
|
+
* the whole string.
|
|
26
|
+
*
|
|
27
|
+
* @since 0.1.0
|
|
28
|
+
* @category constructors
|
|
29
|
+
*/
|
|
30
|
+
export declare const make: <A, E>(parser: Parser<A, E, never, string>, options?: Options<A>) => ParserSchema<A>;
|
|
31
|
+
//# sourceMappingURL=ParserSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParserSchema.d.ts","sourceRoot":"","sources":["../src/ParserSchema.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGzC;;;;;GAKG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,mEAAmE;IACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;IACpD,iEAAiE;IACjE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,CAAE,SAAQ,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;CAAG;AAE7F;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,CAAC,UAAU,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,OAAO,CAAC,CAAC,CAAC,KAAG,YAAY,CAAC,CAAC,CAuBpG,CAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Building Effect `Schema`s from parsers.
|
|
3
|
+
*
|
|
4
|
+
* A parser over strings becomes a schema that decodes a `string` into the
|
|
5
|
+
* parser's output. Parse errors become schema issues carrying the rendered
|
|
6
|
+
* `ParseError` message. Encoding needs a printer, supplied as `encode`;
|
|
7
|
+
* without one, encoding is forbidden.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* import { Schema } from "effect"
|
|
12
|
+
* import { Ascii, Parser, ParserSchema, Token } from "@thomasfosterau/effect-parse"
|
|
13
|
+
*
|
|
14
|
+
* const Version = ParserSchema.make(
|
|
15
|
+
* Parser.struct({
|
|
16
|
+
* major: Ascii.decUint,
|
|
17
|
+
* minor: Parser.preceded(Token.literal("."), Ascii.decUint)
|
|
18
|
+
* }),
|
|
19
|
+
* { encode: ({ major, minor }) => `${major}.${minor}` }
|
|
20
|
+
* )
|
|
21
|
+
*
|
|
22
|
+
* Schema.decodeUnknownSync(Version)("1.2") // { major: 1, minor: 2 }
|
|
23
|
+
* Schema.encodeSync(Version)({ major: 3, minor: 4 }) // "3.4"
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @since 0.1.0
|
|
27
|
+
*/
|
|
28
|
+
import * as Effect from "effect/Effect";
|
|
29
|
+
import * as Result from "effect/Result";
|
|
30
|
+
import * as Schema from "effect/Schema";
|
|
31
|
+
import * as SchemaIssue from "effect/SchemaIssue";
|
|
32
|
+
import * as SchemaTransformation from "effect/SchemaTransformation";
|
|
33
|
+
import * as P from "./Parser.js";
|
|
34
|
+
/**
|
|
35
|
+
* Creates a schema that decodes a string with `parser`, which must consume
|
|
36
|
+
* the whole string.
|
|
37
|
+
*
|
|
38
|
+
* @since 0.1.0
|
|
39
|
+
* @category constructors
|
|
40
|
+
*/
|
|
41
|
+
export const make = (parser, options) => {
|
|
42
|
+
const target = Schema.declare((_u) => true, options?.description !== undefined ? { description: options.description } : undefined);
|
|
43
|
+
const encode = options?.encode;
|
|
44
|
+
return Schema.String.pipe(Schema.decodeTo(target, SchemaTransformation.transformEffect({
|
|
45
|
+
decode: (input, parseOptions) => {
|
|
46
|
+
const result = P.parse(parser, input);
|
|
47
|
+
return Result.isSuccess(result)
|
|
48
|
+
? Effect.succeed(result.success)
|
|
49
|
+
: Effect.fail(new SchemaIssue.InvalidValue({ message: result.failure.message }, input, parseOptions));
|
|
50
|
+
},
|
|
51
|
+
encode: (value, parseOptions) => encode !== undefined
|
|
52
|
+
? Effect.succeed(encode(value))
|
|
53
|
+
: Effect.fail(new SchemaIssue.Forbidden({ message: "Encoding is not supported" }, value, parseOptions))
|
|
54
|
+
})));
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=ParserSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParserSchema.js","sourceRoot":"","sources":["../src/ParserSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,oBAAoB,MAAM,6BAA6B,CAAA;AAEnE,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAuBhC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAO,MAAmC,EAAE,OAAoB,EAAmB,EAAE;IACvG,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAC3B,CAAC,EAAE,EAAW,EAAE,CAAC,IAAI,EACrB,OAAO,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CACtF,CAAA;IACD,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAA;IAC9B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CACvB,MAAM,CAAC,QAAQ,CACb,MAAM,EACN,oBAAoB,CAAC,eAAe,CAAY;QAC9C,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;YAC9B,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YACrC,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC7B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;gBAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;QACzG,CAAC;QACD,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,CAC9B,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,2BAA2B,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;KAC5G,CAAC,CACH,CACF,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Stream from "effect/Stream";
|
|
3
|
+
import type { BinaryInput, Source } from "./Input.js";
|
|
4
|
+
import * as ParseError from "./ParseError.js";
|
|
5
|
+
import type { Parser } from "./Parser.js";
|
|
6
|
+
/**
|
|
7
|
+
* Input kinds that can be streamed in chunks.
|
|
8
|
+
*
|
|
9
|
+
* @since 0.1.0
|
|
10
|
+
* @category models
|
|
11
|
+
*/
|
|
12
|
+
export type Chunkable = string | Uint8Array | ReadonlyArray<unknown>;
|
|
13
|
+
/**
|
|
14
|
+
* Options for {@link parseMany}.
|
|
15
|
+
*
|
|
16
|
+
* @since 0.1.0
|
|
17
|
+
* @category models
|
|
18
|
+
*/
|
|
19
|
+
export interface ParseManyOptions<I> {
|
|
20
|
+
/** The empty input, used to initialise the buffer (inferred from the first chunk if omitted). */
|
|
21
|
+
readonly empty?: Source<I> | undefined;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Transforms a stream of input chunks into a stream of parsed values by
|
|
25
|
+
* applying `parser` repeatedly. Each application must consume input.
|
|
26
|
+
*
|
|
27
|
+
* Services required by the parser are taken from the stream's context.
|
|
28
|
+
* Error offsets are relative to the internal buffer of unconsumed input,
|
|
29
|
+
* which is also the `input` of the reported `ParseError`.
|
|
30
|
+
*
|
|
31
|
+
* @since 0.1.0
|
|
32
|
+
* @category combinators
|
|
33
|
+
*/
|
|
34
|
+
export declare const parseMany: {
|
|
35
|
+
<A, E, R, I extends Chunkable>(parser: Parser<A, E, R, I>, options?: ParseManyOptions<I>): <E0, R0>(self: Stream.Stream<Source<I>, E0, R0>) => Stream.Stream<A, E0 | ParseError.ParseError<E>, R0 | R>;
|
|
36
|
+
<I extends Chunkable, E0, R0, A, E, R>(self: Stream.Stream<Source<NoInfer<I>>, E0, R0>, parser: Parser<A, E, R, I>, options?: ParseManyOptions<I>): Stream.Stream<A, E0 | ParseError.ParseError<E>, R0 | R>;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Parses an entire stream of chunks as a single complete input.
|
|
40
|
+
*
|
|
41
|
+
* Parsing does not wait for the stream to end: each chunk is parsed as it
|
|
42
|
+
* arrives, in partial mode, and when the parser runs out of input its
|
|
43
|
+
* repetitions (`repeat`, `separated`, `fold`, `escaped`, ...) remember how
|
|
44
|
+
* far they got, so that the next attempt resumes there rather than starting
|
|
45
|
+
* over. A large document, such as the body of a `fetch` response, is
|
|
46
|
+
* therefore parsed while it downloads, and is ready soon after its last
|
|
47
|
+
* byte. Use {@link parseReadable} or {@link parseResponse} for web streams.
|
|
48
|
+
*
|
|
49
|
+
* The result and any `ParseError` are those of parsing the whole input at
|
|
50
|
+
* once: errors are reported once the stream has ended, by an ordinary
|
|
51
|
+
* interpreted parse of the whole input. A parser compiled with
|
|
52
|
+
* `Parser.compile` streams compiled too (with a build that handles partial
|
|
53
|
+
* input), which is several times faster. As with compiled parsers,
|
|
54
|
+
* callbacks should be pure: the elements parsed before a checkpoint are
|
|
55
|
+
* not parsed again, and on failure everything is parsed again.
|
|
56
|
+
*
|
|
57
|
+
* @since 0.1.0
|
|
58
|
+
* @category combinators
|
|
59
|
+
*/
|
|
60
|
+
export declare const parseAll: {
|
|
61
|
+
<A, E, R, I extends Chunkable>(parser: Parser<A, E, R, I>, options?: ParseManyOptions<I>): <E0, R0>(self: Stream.Stream<Source<I>, E0, R0>) => Effect.Effect<A, E0 | ParseError.ParseError<E>, R0 | R>;
|
|
62
|
+
<I extends Chunkable, E0, R0, A, E, R>(self: Stream.Stream<Source<NoInfer<I>>, E0, R0>, parser: Parser<A, E, R, I>, options?: ParseManyOptions<I>): Effect.Effect<A, E0 | ParseError.ParseError<E>, R0 | R>;
|
|
63
|
+
};
|
|
64
|
+
declare const ReadError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
65
|
+
readonly _tag: "ReadError";
|
|
66
|
+
} & Readonly<A>;
|
|
67
|
+
/**
|
|
68
|
+
* An error reading a `ReadableStream` given to {@link parseReadable} or
|
|
69
|
+
* {@link parseResponse}.
|
|
70
|
+
*
|
|
71
|
+
* @since 0.1.0
|
|
72
|
+
* @category errors
|
|
73
|
+
*/
|
|
74
|
+
export declare class ReadError extends ReadError_base<{
|
|
75
|
+
readonly cause: unknown;
|
|
76
|
+
}> {
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Parses a web `ReadableStream` of bytes, such as the body of a `fetch`
|
|
80
|
+
* response, incrementally (see {@link parseAll}): the bytes are parsed as
|
|
81
|
+
* they arrive, without waiting for the end of the stream or decoding them
|
|
82
|
+
* first. Use a byte parser, e.g. one built from `Text.utf8`.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* import { Effect } from "effect"
|
|
87
|
+
* import { Parser, ParserStream, Text } from "@thomasfosterau/effect-parse"
|
|
88
|
+
*
|
|
89
|
+
* const csvLine = Parser.separated(Text.utf8.takeTill(",\n"), Text.utf8.literal(","))
|
|
90
|
+
* const csv = Parser.separated(csvLine, Text.utf8.literal("\n"))
|
|
91
|
+
*
|
|
92
|
+
* const response = await fetch("https://example.com/data.csv")
|
|
93
|
+
* const rows = await Effect.runPromise(ParserStream.parseReadable(response.body!, csv))
|
|
94
|
+
* ```
|
|
95
|
+
*
|
|
96
|
+
* @since 0.1.0
|
|
97
|
+
* @category combinators
|
|
98
|
+
*/
|
|
99
|
+
export declare const parseReadable: {
|
|
100
|
+
<A, E, R>(parser: Parser<A, E, R, Uint8Array>): (self: ReadableStream<BinaryInput>) => Effect.Effect<A, ParseError.ParseError<E> | ReadError, R>;
|
|
101
|
+
<A, E, R>(self: ReadableStream<BinaryInput>, parser: Parser<A, E, R, Uint8Array>): Effect.Effect<A, ParseError.ParseError<E> | ReadError, R>;
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Parses the body of a `fetch` `Response` incrementally, as it downloads
|
|
105
|
+
* (see {@link parseReadable}). A response without a body is parsed as empty
|
|
106
|
+
* input. The status is not checked.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```ts
|
|
110
|
+
* import { Effect } from "effect"
|
|
111
|
+
* import { Parser, ParserStream, Text } from "@thomasfosterau/effect-parse"
|
|
112
|
+
*
|
|
113
|
+
* const lines = Parser.separated(Text.utf8.tillLineEnding, Text.utf8.lineEnding)
|
|
114
|
+
*
|
|
115
|
+
* const response = await fetch("https://example.com/log.txt")
|
|
116
|
+
* const value = await Effect.runPromise(ParserStream.parseResponse(response, lines))
|
|
117
|
+
* ```
|
|
118
|
+
*
|
|
119
|
+
* @since 0.1.0
|
|
120
|
+
* @category combinators
|
|
121
|
+
*/
|
|
122
|
+
export declare const parseResponse: {
|
|
123
|
+
<A, E, R>(parser: Parser<A, E, R, Uint8Array>): (self: Response) => Effect.Effect<A, ParseError.ParseError<E> | ReadError, R>;
|
|
124
|
+
<A, E, R>(self: Response, parser: Parser<A, E, R, Uint8Array>): Effect.Effect<A, ParseError.ParseError<E> | ReadError, R>;
|
|
125
|
+
};
|
|
126
|
+
export {};
|
|
127
|
+
//# sourceMappingURL=ParserStream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParserStream.d.ts","sourceRoot":"","sources":["../src/ParserStream.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
import * as Data from "effect/Data";
|
|
2
|
+
import * as Effect from "effect/Effect";
|
|
3
|
+
import { dual } from "effect/Function";
|
|
4
|
+
import * as Stream from "effect/Stream";
|
|
5
|
+
import { Fail, Failure, fromSource, State } from "./Input.js";
|
|
6
|
+
import * as ParseError from "./ParseError.js";
|
|
7
|
+
import * as Compiler from "./internal/compiler/registry.js";
|
|
8
|
+
const concat = (a, b) => {
|
|
9
|
+
if (typeof a === "string")
|
|
10
|
+
return (a + b);
|
|
11
|
+
if (a instanceof Uint8Array) {
|
|
12
|
+
if (a.length === 0)
|
|
13
|
+
return b;
|
|
14
|
+
const out = new Uint8Array(a.length + b.length);
|
|
15
|
+
out.set(a);
|
|
16
|
+
out.set(b, a.length);
|
|
17
|
+
return out;
|
|
18
|
+
}
|
|
19
|
+
return [...a, ...b];
|
|
20
|
+
};
|
|
21
|
+
const sliceFrom = (input, offset) => (typeof input === "string" ? input.slice(offset) : input.slice(offset));
|
|
22
|
+
const noProgress = (input, offset) => ParseError.fromFailure(input, new Failure(offset, "Assert", [], [], false, undefined, "`parseMany` parsers must always consume", 0), "Cut");
|
|
23
|
+
/**
|
|
24
|
+
* Transforms a stream of input chunks into a stream of parsed values by
|
|
25
|
+
* applying `parser` repeatedly. Each application must consume input.
|
|
26
|
+
*
|
|
27
|
+
* Services required by the parser are taken from the stream's context.
|
|
28
|
+
* Error offsets are relative to the internal buffer of unconsumed input,
|
|
29
|
+
* which is also the `input` of the reported `ParseError`.
|
|
30
|
+
*
|
|
31
|
+
* @since 0.1.0
|
|
32
|
+
* @category combinators
|
|
33
|
+
*/
|
|
34
|
+
export const parseMany = dual((args) => Stream.isStream(args[0]), (self, parser, options) => Stream.suspend(() => {
|
|
35
|
+
const step = parser.step;
|
|
36
|
+
let buffer = options?.empty === undefined ? undefined : fromSource(options.empty);
|
|
37
|
+
const drain = (context, partial) => {
|
|
38
|
+
const out = [];
|
|
39
|
+
if (buffer === undefined)
|
|
40
|
+
return Effect.succeed(out);
|
|
41
|
+
const input = buffer;
|
|
42
|
+
let offset = 0;
|
|
43
|
+
while (offset < input.length) {
|
|
44
|
+
const state = new State(input, { partial, context, offset });
|
|
45
|
+
const a = step(state);
|
|
46
|
+
if (a === Fail) {
|
|
47
|
+
if (partial && state.mode === "Incomplete")
|
|
48
|
+
break;
|
|
49
|
+
return Effect.fail(ParseError.fromFailure(input, state.reportedFailure(), state.mode, state.encoding));
|
|
50
|
+
}
|
|
51
|
+
if (state.pos === offset)
|
|
52
|
+
return Effect.fail(noProgress(input, offset));
|
|
53
|
+
out.push(a);
|
|
54
|
+
offset = state.pos;
|
|
55
|
+
}
|
|
56
|
+
buffer = sliceFrom(input, offset);
|
|
57
|
+
return Effect.succeed(out);
|
|
58
|
+
};
|
|
59
|
+
const feed = (source) => Effect.flatMap(Effect.context(), (context) => Effect.suspend(() => {
|
|
60
|
+
const chunk = fromSource(source);
|
|
61
|
+
buffer = buffer === undefined ? chunk : concat(buffer, chunk);
|
|
62
|
+
return drain(context, true);
|
|
63
|
+
}));
|
|
64
|
+
const finish = Effect.flatMap(Effect.context(), (context) => Effect.suspend(() => drain(context, false)));
|
|
65
|
+
return self.pipe(Stream.mapEffect(feed), Stream.flattenIterable, Stream.concat(Stream.unwrap(Effect.map(finish, Stream.fromIterable))));
|
|
66
|
+
}));
|
|
67
|
+
/**
|
|
68
|
+
* Parses a stream of chunks incrementally, as one input. Chunks are parsed
|
|
69
|
+
* as they arrive, in partial mode; when the parser runs out of input, its
|
|
70
|
+
* repetitions keep checkpoints (see `internal/resume.ts`), so the next
|
|
71
|
+
* attempt carries on from where the last one stopped instead of starting
|
|
72
|
+
* over.
|
|
73
|
+
*/
|
|
74
|
+
class Incremental {
|
|
75
|
+
parser;
|
|
76
|
+
context;
|
|
77
|
+
kind;
|
|
78
|
+
text = "";
|
|
79
|
+
bytes = new Uint8Array(0);
|
|
80
|
+
items = [];
|
|
81
|
+
length = 0;
|
|
82
|
+
resume = new Map();
|
|
83
|
+
/** The input length at the last attempt, and where that attempt ran out of input. */
|
|
84
|
+
attempted = 0;
|
|
85
|
+
restart = 0;
|
|
86
|
+
/** Set once an attempt settles: a success (with its end offset) or a definite failure. */
|
|
87
|
+
settled;
|
|
88
|
+
constructor(parser, context, empty) {
|
|
89
|
+
this.parser = parser;
|
|
90
|
+
this.context = context;
|
|
91
|
+
if (empty !== undefined)
|
|
92
|
+
this.append(empty);
|
|
93
|
+
}
|
|
94
|
+
append(chunk) {
|
|
95
|
+
if (typeof chunk === "string") {
|
|
96
|
+
this.kind ??= 0;
|
|
97
|
+
this.text += chunk;
|
|
98
|
+
this.length += chunk.length;
|
|
99
|
+
}
|
|
100
|
+
else if (chunk instanceof Uint8Array) {
|
|
101
|
+
this.kind ??= 1;
|
|
102
|
+
const needed = this.length + chunk.length;
|
|
103
|
+
if (needed > this.bytes.length) {
|
|
104
|
+
// Grow geometrically, so appending costs amortized constant time per byte
|
|
105
|
+
const grown = new Uint8Array(Math.max(needed, this.bytes.length * 2, 4096));
|
|
106
|
+
grown.set(this.bytes.subarray(0, this.length));
|
|
107
|
+
this.bytes = grown;
|
|
108
|
+
}
|
|
109
|
+
this.bytes.set(chunk, this.length);
|
|
110
|
+
this.length = needed;
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
this.kind ??= 2;
|
|
114
|
+
for (let i = 0; i < chunk.length; i++)
|
|
115
|
+
this.items.push(chunk[i]);
|
|
116
|
+
this.length = this.items.length;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
input() {
|
|
120
|
+
switch (this.kind) {
|
|
121
|
+
case 1:
|
|
122
|
+
return this.bytes.subarray(0, this.length);
|
|
123
|
+
case 2:
|
|
124
|
+
// Items are only appended between attempts, after each state has read its `end`
|
|
125
|
+
return this.items;
|
|
126
|
+
default:
|
|
127
|
+
return this.text;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
push(chunk) {
|
|
131
|
+
if (chunk.length === 0)
|
|
132
|
+
return;
|
|
133
|
+
this.append(chunk);
|
|
134
|
+
if (this.settled !== undefined)
|
|
135
|
+
return;
|
|
136
|
+
// An attempt re-reads what the last one could not finish, from `restart`;
|
|
137
|
+
// waiting until at least half as much new input has arrived keeps the
|
|
138
|
+
// total work linear in the input. Strings are also copied when they are
|
|
139
|
+
// flattened, so they wait for a fraction of the whole input too.
|
|
140
|
+
const added = this.length - this.attempted;
|
|
141
|
+
if (added < (this.attempted - this.restart) / 2)
|
|
142
|
+
return;
|
|
143
|
+
if (this.kind === 0 && added < this.attempted / 8)
|
|
144
|
+
return;
|
|
145
|
+
this.attempt();
|
|
146
|
+
}
|
|
147
|
+
/** The step attempts run: the parser's resumable compiled code if it was compiled, else the interpreter. */
|
|
148
|
+
step(state) {
|
|
149
|
+
return (Compiler.stepFor(this.parser, state, true) ?? this.parser.step)(state);
|
|
150
|
+
}
|
|
151
|
+
attempt() {
|
|
152
|
+
const state = new State(this.input(), { partial: true, context: this.context });
|
|
153
|
+
state.resume = this.resume;
|
|
154
|
+
const a = this.step(state);
|
|
155
|
+
this.attempted = this.length;
|
|
156
|
+
if (a !== Fail) {
|
|
157
|
+
this.settled = { value: a, pos: state.pos };
|
|
158
|
+
}
|
|
159
|
+
else if (state.mode === "Incomplete") {
|
|
160
|
+
this.restart = state.failure.offset;
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
this.settled = "failed";
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
finish() {
|
|
167
|
+
const settled = this.settled;
|
|
168
|
+
if (settled !== undefined && settled !== "failed") {
|
|
169
|
+
if (settled.pos === this.length)
|
|
170
|
+
return Effect.succeed(settled.value);
|
|
171
|
+
}
|
|
172
|
+
else if (settled === undefined) {
|
|
173
|
+
// The last attempt, in complete mode, resumes from the checkpoints too
|
|
174
|
+
const state = new State(this.input(), { context: this.context });
|
|
175
|
+
state.resume = this.resume;
|
|
176
|
+
const a = this.step(state);
|
|
177
|
+
if (a !== Fail && state.pos === state.end)
|
|
178
|
+
return Effect.succeed(a);
|
|
179
|
+
}
|
|
180
|
+
// The error comes from an ordinary parse of the whole input, so it is the
|
|
181
|
+
// same as if the input had been parsed in one go
|
|
182
|
+
const all = this.input();
|
|
183
|
+
const state = new State(all, { context: this.context });
|
|
184
|
+
const a = this.parser.step(state);
|
|
185
|
+
if (a !== Fail && state.pos === state.end)
|
|
186
|
+
return Effect.succeed(a);
|
|
187
|
+
if (a !== Fail)
|
|
188
|
+
state.backtrack("Eof", ["end of input"]);
|
|
189
|
+
return Effect.fail(ParseError.fromFailure(all, state.reportedFailure(), state.mode, state.encoding));
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Parses an entire stream of chunks as a single complete input.
|
|
194
|
+
*
|
|
195
|
+
* Parsing does not wait for the stream to end: each chunk is parsed as it
|
|
196
|
+
* arrives, in partial mode, and when the parser runs out of input its
|
|
197
|
+
* repetitions (`repeat`, `separated`, `fold`, `escaped`, ...) remember how
|
|
198
|
+
* far they got, so that the next attempt resumes there rather than starting
|
|
199
|
+
* over. A large document, such as the body of a `fetch` response, is
|
|
200
|
+
* therefore parsed while it downloads, and is ready soon after its last
|
|
201
|
+
* byte. Use {@link parseReadable} or {@link parseResponse} for web streams.
|
|
202
|
+
*
|
|
203
|
+
* The result and any `ParseError` are those of parsing the whole input at
|
|
204
|
+
* once: errors are reported once the stream has ended, by an ordinary
|
|
205
|
+
* interpreted parse of the whole input. A parser compiled with
|
|
206
|
+
* `Parser.compile` streams compiled too (with a build that handles partial
|
|
207
|
+
* input), which is several times faster. As with compiled parsers,
|
|
208
|
+
* callbacks should be pure: the elements parsed before a checkpoint are
|
|
209
|
+
* not parsed again, and on failure everything is parsed again.
|
|
210
|
+
*
|
|
211
|
+
* @since 0.1.0
|
|
212
|
+
* @category combinators
|
|
213
|
+
*/
|
|
214
|
+
export const parseAll = dual((args) => Stream.isStream(args[0]), (self, parser, options) => Effect.flatMap(Effect.context(), (context) => Effect.suspend(() => {
|
|
215
|
+
const empty = options?.empty === undefined ? undefined : fromSource(options.empty);
|
|
216
|
+
const incremental = new Incremental(parser, context, empty);
|
|
217
|
+
return Effect.flatMap(Stream.runForEach(self, (chunk) => Effect.sync(() => incremental.push(fromSource(chunk)))), () => Effect.suspend(() => incremental.finish()));
|
|
218
|
+
})));
|
|
219
|
+
/**
|
|
220
|
+
* An error reading a `ReadableStream` given to {@link parseReadable} or
|
|
221
|
+
* {@link parseResponse}.
|
|
222
|
+
*
|
|
223
|
+
* @since 0.1.0
|
|
224
|
+
* @category errors
|
|
225
|
+
*/
|
|
226
|
+
export class ReadError extends Data.TaggedError("ReadError") {
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Parses a web `ReadableStream` of bytes, such as the body of a `fetch`
|
|
230
|
+
* response, incrementally (see {@link parseAll}): the bytes are parsed as
|
|
231
|
+
* they arrive, without waiting for the end of the stream or decoding them
|
|
232
|
+
* first. Use a byte parser, e.g. one built from `Text.utf8`.
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* ```ts
|
|
236
|
+
* import { Effect } from "effect"
|
|
237
|
+
* import { Parser, ParserStream, Text } from "@thomasfosterau/effect-parse"
|
|
238
|
+
*
|
|
239
|
+
* const csvLine = Parser.separated(Text.utf8.takeTill(",\n"), Text.utf8.literal(","))
|
|
240
|
+
* const csv = Parser.separated(csvLine, Text.utf8.literal("\n"))
|
|
241
|
+
*
|
|
242
|
+
* const response = await fetch("https://example.com/data.csv")
|
|
243
|
+
* const rows = await Effect.runPromise(ParserStream.parseReadable(response.body!, csv))
|
|
244
|
+
* ```
|
|
245
|
+
*
|
|
246
|
+
* @since 0.1.0
|
|
247
|
+
* @category combinators
|
|
248
|
+
*/
|
|
249
|
+
export const parseReadable = dual(2, (self, parser) => parseAll(Stream.fromReadableStream({ evaluate: () => self, onError: (cause) => new ReadError({ cause }) }), parser, { empty: new Uint8Array(0) }));
|
|
250
|
+
/**
|
|
251
|
+
* Parses the body of a `fetch` `Response` incrementally, as it downloads
|
|
252
|
+
* (see {@link parseReadable}). A response without a body is parsed as empty
|
|
253
|
+
* input. The status is not checked.
|
|
254
|
+
*
|
|
255
|
+
* @example
|
|
256
|
+
* ```ts
|
|
257
|
+
* import { Effect } from "effect"
|
|
258
|
+
* import { Parser, ParserStream, Text } from "@thomasfosterau/effect-parse"
|
|
259
|
+
*
|
|
260
|
+
* const lines = Parser.separated(Text.utf8.tillLineEnding, Text.utf8.lineEnding)
|
|
261
|
+
*
|
|
262
|
+
* const response = await fetch("https://example.com/log.txt")
|
|
263
|
+
* const value = await Effect.runPromise(ParserStream.parseResponse(response, lines))
|
|
264
|
+
* ```
|
|
265
|
+
*
|
|
266
|
+
* @since 0.1.0
|
|
267
|
+
* @category combinators
|
|
268
|
+
*/
|
|
269
|
+
export const parseResponse = dual(2, (self, parser) => parseReadable(self.body ?? new ReadableStream({ start: (c) => c.close() }), parser));
|
|
270
|
+
//# sourceMappingURL=ParserStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ParserStream.js","sourceRoot":"","sources":["../src/ParserStream.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,iCAAiC,CAAA;AAY3D,MAAM,MAAM,GAAG,CAAsB,CAAI,EAAE,CAAI,EAAK,EAAE;IACpD,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,GAAI,CAAY,CAAM,CAAA;IAC1D,IAAI,CAAC,YAAY,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAA;QAC5B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,GAAI,CAAgB,CAAC,MAAM,CAAC,CAAA;QAC/D,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QACV,GAAG,CAAC,GAAG,CAAC,CAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QAClC,OAAO,GAAQ,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,GAAI,CAA4B,CAAiB,CAAA;AACjE,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,CAAsB,KAAQ,EAAE,MAAc,EAAK,EAAE,CACrE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAM,CAAA;AAE9E,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,MAAc,EAAE,EAAE,CAClD,UAAU,CAAC,WAAW,CACpB,KAAK,EACL,IAAI,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,yCAAyC,EAAE,CAAC,CAAC,EACrG,KAAK,CACN,CAAA;AAaH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,SAAS,GAUlB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAC3C,IAAsC,EACtC,MAA0B,EAC1B,OAA6B,EAC4B,EAAE,CAC3D,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;IAClB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;IACxB,IAAI,MAAM,GAAkB,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAI,OAAO,CAAC,KAAK,CAAC,CAAA;IAEnG,MAAM,KAAK,GAAG,CACZ,OAAY,EACZ,OAAgB,EACmC,EAAE;QACrD,MAAM,GAAG,GAAa,EAAE,CAAA;QACxB,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACpD,MAAM,KAAK,GAAG,MAAM,CAAA;QACpB,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YAC5D,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;YACrB,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACf,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;oBAAE,MAAK;gBACjD,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAI,KAAK,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC3G,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM;gBAAE,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;YACvE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACX,MAAM,GAAG,KAAK,CAAC,GAAG,CAAA;QACpB,CAAC;QACD,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACjC,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,CAAC,MAAiB,EAAE,EAAE,CACjC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAC9C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,KAAK,GAAG,UAAU,CAAI,MAAM,CAAC,CAAA;QACnC,MAAM,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC7D,OAAO,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC7B,CAAC,CAAC,CAAC,CAAA;IAEP,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAE5G,OAAO,IAAI,CAAC,IAAI,CACd,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EACtB,MAAM,CAAC,eAAe,EACtB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CACtE,CAAA;AACH,CAAC,CAAC,CAAC,CAAA;AAEL;;;;;;GAMG;AACH,MAAM,WAAW;IAcI,MAAM;IACN,OAAO;IAdlB,IAAI,CAAuB;IAC3B,IAAI,GAAG,EAAE,CAAA;IACT,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;IACzB,KAAK,GAAmB,EAAE,CAAA;IAC1B,MAAM,GAAG,CAAC,CAAA;IACD,MAAM,GAAuB,IAAI,GAAG,EAAE,CAAA;IACvD,qFAAqF;IAC7E,SAAS,GAAG,CAAC,CAAA;IACb,OAAO,GAAG,CAAC,CAAA;IACnB,0FAA0F;IAClF,OAAO,CAAoE;IAEnF,YACmB,MAA4B,EAC5B,OAA+B,EAChD,KAAoB;sBAFH,MAAM;uBACN,OAAO;QAGxB,IAAI,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC7C,CAAC;IAEO,MAAM,CAAC,KAAQ;QACrB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,KAAK,CAAC,CAAA;YACf,IAAI,CAAC,IAAI,IAAI,KAAK,CAAA;YAClB,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAA;QAC7B,CAAC;aAAM,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAA;YACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YACzC,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC/B,0EAA0E;gBAC1E,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;gBAC3E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;gBAC9C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YACpB,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,KAAK,CAAC,CAAA;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAChE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;QACjC,CAAC;IACH,CAAC;IAEO,KAAK;QACX,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAM,CAAA;YACjD,KAAK,CAAC;gBACJ,gFAAgF;gBAChF,OAAO,IAAI,CAAC,KAAqB,CAAA;YACnC;gBACE,OAAO,IAAI,CAAC,IAAS,CAAA;QACzB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAQ;QACX,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAM;QACtC,0EAA0E;QAC1E,sEAAsE;QACtE,wEAAwE;QACxE,iEAAiE;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;QAC1C,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAM;QACvD,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC;YAAE,OAAM;QACzD,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,4GAA4G;IACpG,IAAI,CAAC,KAAe;QAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAA;IAChF,CAAC;IAEO,OAAO;QACb,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QAC/E,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,EAAE,KAAK,EAAE,CAAM,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAA;QAClD,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAA;QACrC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAA;QACzB,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAC5B,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAClD,IAAI,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM;gBAAE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACvE,CAAC;aAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,uEAAuE;YACvE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;YAChE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC1B,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;gBAAE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAM,CAAC,CAAA;QAC1E,CAAC;QACD,0EAA0E;QAC1E,iDAAiD;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;QACxB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QACvD,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACjC,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;YAAE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACnE,IAAI,CAAC,KAAK,IAAI;YAAE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;QACxD,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAI,GAAG,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;IACzG,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAUjB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAC3C,IAAsC,EACtC,MAA0B,EAC1B,OAA6B,EAC4B,EAAE,CAC3D,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAK,EAAE,CAAC,OAAO,EAAE,EAAE,CAC9C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;IAClB,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAI,OAAO,CAAC,KAAK,CAAC,CAAA;IACrF,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,OAAiC,EAAE,KAAK,CAAC,CAAA;IACrF,OAAO,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAC7F,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CACjD,CAAA;AACH,CAAC,CAAC,CAAC,CAAC,CAAA;AAER;;;;;;GAMG;AACH,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAA8B;CAAG;AAE5F;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,aAAa,GAQtB,IAAI,CAAC,CAAC,EAAE,CACV,IAAiC,EACjC,MAAmC,EACwB,EAAE,CAC7D,QAAQ,CACN,MAAM,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EACjG,MAAM,EACN,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAC7B,CAAC,CAAA;AAEJ;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,aAAa,GAKtB,IAAI,CAAC,CAAC,EAAE,CACV,IAAc,EACd,MAAmC,EACwB,EAAE,CAC7D,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,cAAc,CAAa,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA"}
|