@typed/guard 0.1.0 → 0.1.2

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/index.js CHANGED
@@ -3,10 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.addTag = void 0;
6
7
  exports.any = any;
7
- exports.getGuard = exports.filterMap = exports.filter = exports.compose = exports.catchAllCause = exports.catchAll = void 0;
8
+ exports.filterMap = exports.filter = exports.encode = exports.decode = exports.compose = exports.catchAllCause = exports.catchAll = exports.bindTo = exports.bind = void 0;
9
+ exports.fromSchemaDecode = fromSchemaDecode;
10
+ exports.fromSchemaEncode = fromSchemaEncode;
11
+ exports.let = exports.getGuard = void 0;
8
12
  exports.liftPredicate = liftPredicate;
9
13
  exports.tap = exports.provideServiceEffect = exports.provideService = exports.provide = exports.mapEffect = exports.map = void 0;
14
+ var Schema = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Schema"));
10
15
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
11
16
  var _Function = /*#__PURE__*/require("effect/Function");
12
17
  var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Option"));
@@ -68,10 +73,10 @@ const filter = exports.filter = /*#__PURE__*/(0, _Function.dual)(2, (guard, pred
68
73
  * @since 1.0.0
69
74
  */
70
75
  function any(guards) {
71
- const entries = Object.entries(guards);
76
+ const entries = Object.entries(guards).map(([k, v]) => [k, getGuard(v)]);
72
77
  return i => Effect.gen(function* (_) {
73
78
  for (const [_tag, guard] of entries) {
74
- const match = yield* _(getGuard(guard)(i));
79
+ const match = yield* _(guard(i));
75
80
  if (Option.isSome(match)) {
76
81
  return Option.some({
77
82
  _tag,
@@ -120,4 +125,68 @@ const provideServiceEffect = exports.provideServiceEffect = /*#__PURE__*/(0, _Fu
120
125
  const g = getGuard(guard);
121
126
  return i => Effect.provideServiceEffect(g(i), tag, service);
122
127
  });
128
+ const parseOptions = {
129
+ errors: "all",
130
+ onExcessProperty: "ignore"
131
+ };
132
+ /**
133
+ * @since 1.0.0
134
+ */
135
+ function fromSchemaDecode(schema) {
136
+ const decode_ = Schema.decode(schema);
137
+ return i => Effect.asSome(decode_(i, parseOptions));
138
+ }
139
+ /**
140
+ * @since 1.0.0
141
+ */
142
+ function fromSchemaEncode(schema) {
143
+ const encode_ = Schema.encode(schema);
144
+ return a => Effect.asSome(encode_(a, parseOptions));
145
+ }
146
+ /**
147
+ * @since 1.0.0
148
+ */
149
+ const decode = exports.decode = /*#__PURE__*/(0, _Function.dual)(2, function decode(guard, schema) {
150
+ return compose(guard, fromSchemaDecode(schema));
151
+ });
152
+ /**
153
+ * @since 1.0.0
154
+ */
155
+ const encode = exports.encode = /*#__PURE__*/(0, _Function.dual)(2, function encode(guard, schema) {
156
+ return compose(guard, fromSchemaEncode(schema));
157
+ });
158
+ /**
159
+ * @since 1.0.0
160
+ */
161
+ const let_ = exports.let = /*#__PURE__*/(0, _Function.dual)(3, function attachProperty(guard, key, value) {
162
+ return map(guard, a => ({
163
+ ...a,
164
+ [key]: value
165
+ }));
166
+ });
167
+ /**
168
+ * @since 1.0.0
169
+ */
170
+ const addTag = exports.addTag = /*#__PURE__*/(0, _Function.dual)(2, function attachProperty(guard, value) {
171
+ return map(guard, a => ({
172
+ ...a,
173
+ _tag: value
174
+ }));
175
+ });
176
+ /**
177
+ * @since 1.0.0
178
+ */
179
+ const bindTo = exports.bindTo = /*#__PURE__*/(0, _Function.dual)(2, (guard, key) => map(guard, a => ({
180
+ [key]: a
181
+ })));
182
+ /**
183
+ * @since 1.0.0
184
+ */
185
+ const bind = exports.bind = /*#__PURE__*/(0, _Function.dual)(3, function bind(guard, key, f) {
186
+ const f_ = bindTo(f, key);
187
+ return compose(guard, o => Effect.map(f_(o), Option.map(b => ({
188
+ ...o,
189
+ ...b
190
+ }))));
191
+ });
123
192
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Effect","_interopRequireWildcard","require","_Function","Option","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","getGuard","guard","asGuard","exports","compose","dual","flatMap","input","output","g1","g2","match","onNone","succeedNone","onSome","mapEffect","f","o","asSome","map","sync","tap","as","some","filterMap","g","filter","predicate","any","guards","entries","gen","_","_tag","isSome","value","none","liftPredicate","catchAllCause","catchAll","provide","provided","provideService","tag","service","provideServiceEffect"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Schema","_interopRequireWildcard","require","Effect","_Function","Option","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","getGuard","guard","asGuard","exports","compose","dual","flatMap","input","output","g1","g2","match","onNone","succeedNone","onSome","mapEffect","f","o","asSome","map","sync","tap","as","some","filterMap","g","filter","predicate","any","guards","entries","k","v","gen","_","_tag","isSome","value","none","liftPredicate","catchAllCause","catchAll","provide","provided","provideService","tag","service","provideServiceEffect","parseOptions","errors","onExcessProperty","fromSchemaDecode","schema","decode_","decode","fromSchemaEncode","encode_","encode","let_","let","attachProperty","key","addTag","bindTo","bind","f_","b"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
+ import type * as ParseResult from "@effect/schema/ParseResult";
5
+ import * as Schema from "@effect/schema/Schema";
4
6
  import type { Cause, Context, Layer, Predicate, Runtime } from "effect";
5
7
  import * as Effect from "effect/Effect";
6
8
  import * as Option from "effect/Option";
@@ -151,5 +153,75 @@ export declare const provideServiceEffect: {
151
153
  <Id, S, E2, R2>(tag: Context.Tag<Id, S>, service: Effect.Effect<S, E2, R2>): <I, O, E, R>(guard: GuardInput<I, O, E, R>) => Guard<I, O, E | E2, Exclude<R, Id> | R2>;
152
154
  <I, O, E, R, Id, S, E2, R2>(guard: GuardInput<I, O, E, R>, tag: Context.Tag<Id, S>, service: Effect.Effect<S, E2, R2>): Guard<I, O, E | E2, Exclude<R, Id> | R2>;
153
155
  };
154
- export {};
156
+ /**
157
+ * @since 1.0.0
158
+ */
159
+ export declare function fromSchemaDecode<A, I, R>(schema: Schema.Schema<A, I, R>): Guard<I, A, ParseResult.ParseError, R>;
160
+ /**
161
+ * @since 1.0.0
162
+ */
163
+ export declare function fromSchemaEncode<A, I, R>(schema: Schema.Schema<A, I, R>): Guard<A, I, ParseResult.ParseError, R>;
164
+ /**
165
+ * @since 1.0.0
166
+ */
167
+ export declare const decode: {
168
+ <A, O, R2>(schema: Schema.Schema<A, O, R2>): <I, E = never, R = never>(guard: GuardInput<I, O, E, R>) => Guard<I, A, ParseResult.ParseError | E, R | R2>;
169
+ <I, O, E, R, A, R2>(guard: GuardInput<I, O, E, R>, schema: Schema.Schema<A, O, R2>): Guard<I, A, ParseResult.ParseError | E, R | R2>;
170
+ };
171
+ /**
172
+ * @since 1.0.0
173
+ */
174
+ export declare const encode: {
175
+ <O, A, R2>(schema: Schema.Schema<O, A, R2>): <I, E = never, R = never>(guard: GuardInput<I, O, E, R>) => Guard<I, A, ParseResult.ParseError | E, R | R2>;
176
+ <I, O, E, R, A, R2>(guard: GuardInput<I, O, E, R>, schema: Schema.Schema<O, A, R2>): Guard<I, A, ParseResult.ParseError | E, R | R2>;
177
+ };
178
+ /**
179
+ * @since 1.0.0
180
+ */
181
+ declare const let_: {
182
+ <K extends PropertyKey, B>(key: K, value: B): <I, O, E = never, R = never>(guard: Guard<I, O, E, R>) => Guard<I, O & {
183
+ [k in K]: B;
184
+ }, E, R>;
185
+ <I, O, E, R, K extends PropertyKey, B>(guard: Guard<I, O, E, R>, key: K, value: B): Guard<I, O & {
186
+ [k in K]: B;
187
+ }, E, R>;
188
+ };
189
+ export {
190
+ /**
191
+ * @since 1.0.0
192
+ */
193
+ let_ as let };
194
+ /**
195
+ * @since 1.0.0
196
+ */
197
+ export declare const addTag: {
198
+ <B>(value: B): <I, O, E = never, R = never>(guard: Guard<I, O, E, R>) => Guard<I, O & {
199
+ readonly _tag: B;
200
+ }, E, R>;
201
+ <I, O, E, R, B>(guard: Guard<I, O, E, R>, value: B): Guard<I, O & {
202
+ readonly _tag: B;
203
+ }, E, R>;
204
+ };
205
+ /**
206
+ * @since 1.0.0
207
+ */
208
+ export declare const bindTo: {
209
+ <K extends PropertyKey>(key: K): <I, O, E, R>(guard: GuardInput<I, O, E, R>) => Guard<I, {
210
+ [k in K]: O;
211
+ }, E, R>;
212
+ <I, O, E, R, K extends PropertyKey>(guard: GuardInput<I, O, E, R>, key: K): Guard<I, {
213
+ [k in K]: O;
214
+ }, E, R>;
215
+ };
216
+ /**
217
+ * @since 1.0.0
218
+ */
219
+ export declare const bind: {
220
+ <I, O, E, R, K extends PropertyKey, B, E2, R2>(key: K, f: GuardInput<O, B, E2, R2>): (guard: GuardInput<I, O, E, R>) => Guard<I, O & {
221
+ [k in K]: B;
222
+ }, E | E2, R | R2>;
223
+ <I, O, E, R, K extends PropertyKey, B, E2, R2>(guard: GuardInput<I, O, E, R>, key: K, f: GuardInput<O, B, E2, R2>): Guard<I, O & {
224
+ [k in K]: B;
225
+ }, E | E2, R | R2>;
226
+ };
155
227
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,KAAK,WAAW,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AACvE,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC;;GAEG;AACH,MAAM,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAElH;;GAEG;AACH,yBAAiB,KAAK,CAAC;IACrB;;OAEG;IACH,KAAY,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAC/E,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAC1D,KAAK,CAAA;IAET;;OAEG;IACH,KAAY,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GACjF,CAAC,SAAS,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAC1D,KAAK,CAAA;IAET;;OAEG;IACH,KAAY,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAC7E,CAAC,SAAS,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAC5D,KAAK,CAAA;IAET;;OAEG;IACH,KAAY,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAC9E,CAAC,SAAS,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAC5D,KAAK,CAAA;CACV;AAED;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK;IAChE,QAAQ,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAE5F;;GAEG;AACH,eAAO,MAAM,QAAQ,kFACyB,CAAA;AAE9C;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACX,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAC/B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAC1E,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAerH,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACX,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAC1E,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACpB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAM9B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACrF,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAMjF,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACX,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAC1E,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACpB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GACpC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAM9B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACpG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAOjG,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC9G,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAChG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAO7F,CAAA;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,KAAK,CAAC,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAC3F,MAAM,EAAE,EAAE,GACT,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAY5F;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAC7G,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAC1B,CAAA;AAED,KAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,CAAA;AAE7G;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,EAAE,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;IAC3F;SACG,CAAC,IAAI,MAAM,EAAE,GAAG;YAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;SAAE;KAC3E,CAAC,MAAM,EAAE,CAAC;CACZ,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAE/B;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACjG,wBAAgB,aAAa,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAKhF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE;IAC1B,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACZ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAClD,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAC3E,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACrB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAClD,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAO/B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE;IACrB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACZ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACrC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAC3E,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACrB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GACrC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAO/B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB,CAAC,EAAE,EACD,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAChF,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAClH,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EACT,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAChC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAE1F,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAC9G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAC9G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACrB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAChC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAO3C,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE;IAC3B,CAAC,EAAE,EAAE,CAAC,EACJ,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EACvB,OAAO,EAAE,CAAC,GACT,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAChF,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAChB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EACvB,OAAO,EAAE,CAAC,GACT,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;CAQjC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE;IACjC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACZ,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAChC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAC1F,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EACxB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAChC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAQ3C,CAAA;AAIF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAGhH;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAGhH;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EACP,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAC9B,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAE9G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAChB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAMlD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EACP,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAC9B,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAE9G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAChB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAMlD,CAAA;AAEF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE;IACV,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,EACvB,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,CAAC,GACP,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAEhG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,EACnC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACxB,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,CAAC,GACP,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAOtC,CAAA;AAEF,OAAO;AACL;;GAEG;AACH,IAAI,IAAI,GAAG,EACZ,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,CAAC,EACA,KAAK,EAAE,CAAC,GACP,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG;QAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;KAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAErG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACZ,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACxB,KAAK,EAAE,CAAC,GACP,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG;QAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;KAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAM3C,CAAA;AACF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/G,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAIlB,CAAA;AAE3F;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE;IACjB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAC3C,GAAG,EAAE,CAAC,EACN,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAC1B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAEnF,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAC3C,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC7B,GAAG,EAAE,CAAC,EACN,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,GAC1B,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAShD,CAAA"}
package/dist/esm/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
+ import * as Schema from "@effect/schema/Schema";
4
5
  import * as Effect from "effect/Effect";
5
6
  import { dual } from "effect/Function";
6
7
  import * as Option from "effect/Option";
@@ -55,10 +56,10 @@ export const filter = dual(2, (guard, predicate) => {
55
56
  * @since 1.0.0
56
57
  */
57
58
  export function any(guards) {
58
- const entries = Object.entries(guards);
59
+ const entries = Object.entries(guards).map(([k, v]) => [k, getGuard(v)]);
59
60
  return (i) => Effect.gen(function* (_) {
60
61
  for (const [_tag, guard] of entries) {
61
- const match = yield* _(getGuard(guard)(i));
62
+ const match = yield* _(guard(i));
62
63
  if (Option.isSome(match)) {
63
64
  return Option.some({ _tag, value: match.value });
64
65
  }
@@ -104,4 +105,59 @@ export const provideServiceEffect = dual(3, function provideServiceEffect(guard,
104
105
  const g = getGuard(guard);
105
106
  return (i) => Effect.provideServiceEffect(g(i), tag, service);
106
107
  });
108
+ const parseOptions = { errors: "all", onExcessProperty: "ignore" };
109
+ /**
110
+ * @since 1.0.0
111
+ */
112
+ export function fromSchemaDecode(schema) {
113
+ const decode_ = Schema.decode(schema);
114
+ return (i) => Effect.asSome(decode_(i, parseOptions));
115
+ }
116
+ /**
117
+ * @since 1.0.0
118
+ */
119
+ export function fromSchemaEncode(schema) {
120
+ const encode_ = Schema.encode(schema);
121
+ return (a) => Effect.asSome(encode_(a, parseOptions));
122
+ }
123
+ /**
124
+ * @since 1.0.0
125
+ */
126
+ export const decode = dual(2, function decode(guard, schema) {
127
+ return compose(guard, fromSchemaDecode(schema));
128
+ });
129
+ /**
130
+ * @since 1.0.0
131
+ */
132
+ export const encode = dual(2, function encode(guard, schema) {
133
+ return compose(guard, fromSchemaEncode(schema));
134
+ });
135
+ /**
136
+ * @since 1.0.0
137
+ */
138
+ const let_ = dual(3, function attachProperty(guard, key, value) {
139
+ return map(guard, (a) => ({ ...a, [key]: value }));
140
+ });
141
+ export {
142
+ /**
143
+ * @since 1.0.0
144
+ */
145
+ let_ as let };
146
+ /**
147
+ * @since 1.0.0
148
+ */
149
+ export const addTag = dual(2, function attachProperty(guard, value) {
150
+ return map(guard, (a) => ({ ...a, _tag: value }));
151
+ });
152
+ /**
153
+ * @since 1.0.0
154
+ */
155
+ export const bindTo = dual(2, (guard, key) => map(guard, (a) => ({ [key]: a })));
156
+ /**
157
+ * @since 1.0.0
158
+ */
159
+ export const bind = dual(3, function bind(guard, key, f) {
160
+ const f_ = bindTo(f, key);
161
+ return compose(guard, (o) => Effect.map(f_(o), Option.map((b) => ({ ...o, ...b }))));
162
+ });
107
163
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typed/guard",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -9,8 +9,10 @@
9
9
  },
10
10
  "sideEffects": [],
11
11
  "author": "Typed contributors",
12
- "dependencies": {},
13
- "peerDependencies": {},
12
+ "dependencies": {
13
+ "@effect/schema": "^0.63.1",
14
+ "effect": "^2.4.0"
15
+ },
14
16
  "main": "./dist/cjs/index.js",
15
17
  "module": "./dist/esm/index.js",
16
18
  "types": "./dist/dts/index.d.ts",
package/src/index.ts CHANGED
@@ -2,6 +2,9 @@
2
2
  * @since 1.0.0
3
3
  */
4
4
 
5
+ import type { ParseOptions } from "@effect/schema/AST"
6
+ import type * as ParseResult from "@effect/schema/ParseResult"
7
+ import * as Schema from "@effect/schema/Schema"
5
8
  import type { Cause, Context, Layer, Predicate, Runtime } from "effect"
6
9
  import * as Effect from "effect/Effect"
7
10
  import { dual } from "effect/Function"
@@ -172,11 +175,11 @@ export const filter: {
172
175
  export function any<const GS extends Readonly<Record<string, GuardInput<any, any, any, any>>>>(
173
176
  guards: GS
174
177
  ): Guard<AnyInput<GS>, AnyOutput<GS>, Guard.Error<GS[keyof GS]>, Guard.Context<GS[keyof GS]>> {
175
- const entries = Object.entries(guards)
178
+ const entries = Object.entries(guards).map(([k, v]) => [k, getGuard(v)] as const)
176
179
  return (i: AnyInput<GS>) =>
177
180
  Effect.gen(function*(_) {
178
181
  for (const [_tag, guard] of entries) {
179
- const match = yield* _(getGuard(guard)(i))
182
+ const match = yield* _(guard(i))
180
183
  if (Option.isSome(match)) {
181
184
  return Option.some({ _tag, value: match.value } as AnyOutput<GS>)
182
185
  }
@@ -319,3 +322,141 @@ export const provideServiceEffect: {
319
322
  const g = getGuard(guard)
320
323
  return (i) => Effect.provideServiceEffect(g(i), tag, service)
321
324
  })
325
+
326
+ const parseOptions: ParseOptions = { errors: "all", onExcessProperty: "ignore" }
327
+
328
+ /**
329
+ * @since 1.0.0
330
+ */
331
+ export function fromSchemaDecode<A, I, R>(schema: Schema.Schema<A, I, R>): Guard<I, A, ParseResult.ParseError, R> {
332
+ const decode_ = Schema.decode(schema)
333
+ return (i: I) => Effect.asSome(decode_(i, parseOptions))
334
+ }
335
+
336
+ /**
337
+ * @since 1.0.0
338
+ */
339
+ export function fromSchemaEncode<A, I, R>(schema: Schema.Schema<A, I, R>): Guard<A, I, ParseResult.ParseError, R> {
340
+ const encode_ = Schema.encode(schema)
341
+ return (a: A) => Effect.asSome(encode_(a, parseOptions))
342
+ }
343
+
344
+ /**
345
+ * @since 1.0.0
346
+ */
347
+ export const decode: {
348
+ <A, O, R2>(
349
+ schema: Schema.Schema<A, O, R2>
350
+ ): <I, E = never, R = never>(guard: GuardInput<I, O, E, R>) => Guard<I, A, ParseResult.ParseError | E, R | R2>
351
+
352
+ <I, O, E, R, A, R2>(
353
+ guard: GuardInput<I, O, E, R>,
354
+ schema: Schema.Schema<A, O, R2>
355
+ ): Guard<I, A, ParseResult.ParseError | E, R | R2>
356
+ } = dual(2, function decode<I, O, E, R, A, R2>(
357
+ guard: GuardInput<I, O, E, R>,
358
+ schema: Schema.Schema<A, O, R2>
359
+ ): Guard<I, A, E | ParseResult.ParseError, R | R2> {
360
+ return compose(guard, fromSchemaDecode(schema))
361
+ })
362
+
363
+ /**
364
+ * @since 1.0.0
365
+ */
366
+ export const encode: {
367
+ <O, A, R2>(
368
+ schema: Schema.Schema<O, A, R2>
369
+ ): <I, E = never, R = never>(guard: GuardInput<I, O, E, R>) => Guard<I, A, ParseResult.ParseError | E, R | R2>
370
+
371
+ <I, O, E, R, A, R2>(
372
+ guard: GuardInput<I, O, E, R>,
373
+ schema: Schema.Schema<O, A, R2>
374
+ ): Guard<I, A, ParseResult.ParseError | E, R | R2>
375
+ } = dual(2, function encode<I, O, E, R, A, R2>(
376
+ guard: GuardInput<I, O, E, R>,
377
+ schema: Schema.Schema<O, A, R2>
378
+ ): Guard<I, A, E | ParseResult.ParseError, R | R2> {
379
+ return compose(guard, fromSchemaEncode(schema))
380
+ })
381
+
382
+ /**
383
+ * @since 1.0.0
384
+ */
385
+ const let_: {
386
+ <K extends PropertyKey, B>(
387
+ key: K,
388
+ value: B
389
+ ): <I, O, E = never, R = never>(guard: Guard<I, O, E, R>) => Guard<I, O & { [k in K]: B }, E, R>
390
+
391
+ <I, O, E, R, K extends PropertyKey, B>(
392
+ guard: Guard<I, O, E, R>,
393
+ key: K,
394
+ value: B
395
+ ): Guard<I, O & { [k in K]: B }, E, R>
396
+ } = dual(3, function attachProperty<I, O, E, R, K extends PropertyKey, B>(
397
+ guard: Guard<I, O, E, R>,
398
+ key: K,
399
+ value: B
400
+ ): Guard<I, O & { [k in K]: B }, E, R> {
401
+ return map(guard, (a) => ({ ...a, [key]: value } as O & { [k in K]: B }))
402
+ })
403
+
404
+ export {
405
+ /**
406
+ * @since 1.0.0
407
+ */
408
+ let_ as let
409
+ }
410
+
411
+ /**
412
+ * @since 1.0.0
413
+ */
414
+ export const addTag: {
415
+ <B>(
416
+ value: B
417
+ ): <I, O, E = never, R = never>(guard: Guard<I, O, E, R>) => Guard<I, O & { readonly _tag: B }, E, R>
418
+
419
+ <I, O, E, R, B>(
420
+ guard: Guard<I, O, E, R>,
421
+ value: B
422
+ ): Guard<I, O & { readonly _tag: B }, E, R>
423
+ } = dual(2, function attachProperty<I, O, E, R, B>(
424
+ guard: Guard<I, O, E, R>,
425
+ value: B
426
+ ): Guard<I, O & { readonly _tag: B }, E, R> {
427
+ return map(guard, (a) => ({ ...a, _tag: value } as O & { readonly _tag: B }))
428
+ })
429
+ /**
430
+ * @since 1.0.0
431
+ */
432
+ export const bindTo: {
433
+ <K extends PropertyKey>(key: K): <I, O, E, R>(guard: GuardInput<I, O, E, R>) => Guard<I, { [k in K]: O }, E, R>
434
+ <I, O, E, R, K extends PropertyKey>(guard: GuardInput<I, O, E, R>, key: K): Guard<I, { [k in K]: O }, E, R>
435
+ } = dual(2, <I, O, E, R, K extends PropertyKey>(
436
+ guard: GuardInput<I, O, E, R>,
437
+ key: K
438
+ ): Guard<I, { [k in K]: O }, E, R> => map(guard, (a) => ({ [key]: a } as { [k in K]: O })))
439
+
440
+ /**
441
+ * @since 1.0.0
442
+ */
443
+ export const bind: {
444
+ <I, O, E, R, K extends PropertyKey, B, E2, R2>(
445
+ key: K,
446
+ f: GuardInput<O, B, E2, R2>
447
+ ): (guard: GuardInput<I, O, E, R>) => Guard<I, O & { [k in K]: B }, E | E2, R | R2>
448
+
449
+ <I, O, E, R, K extends PropertyKey, B, E2, R2>(
450
+ guard: GuardInput<I, O, E, R>,
451
+ key: K,
452
+ f: GuardInput<O, B, E2, R2>
453
+ ): Guard<I, O & { [k in K]: B }, E | E2, R | R2>
454
+ } = dual(3, function bind<I, O, E, R, K extends PropertyKey, B, E2, R2>(
455
+ guard: GuardInput<I, O, E, R>,
456
+ key: K,
457
+ f: GuardInput<O, B, E2, R2>
458
+ ): Guard<I, O & { [k in K]: B }, E | E2, R | R2> {
459
+ const f_ = bindTo(f, key)
460
+
461
+ return compose(guard, (o) => Effect.map(f_(o), Option.map((b) => ({ ...o, ...b }))))
462
+ })