@typed/async-data 0.5.0 → 0.5.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.
@@ -7,6 +7,7 @@ exports.asyncDataFromSelf = exports.asyncDataFromJson = exports.asyncData = expo
7
7
  var Arbitrary = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Arbitrary"));
8
8
  var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/AST"));
9
9
  var Eq = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Equivalence"));
10
+ var Parser = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Parser"));
10
11
  var ParseResult = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/ParseResult"));
11
12
  var Pretty = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Pretty"));
12
13
  var Schema = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Schema"));
@@ -157,10 +158,10 @@ function isLoadingFrom(value) {
157
158
  }
158
159
  const isCauseFrom = /*#__PURE__*/Schema.is( /*#__PURE__*/Schema.from( /*#__PURE__*/Schema.cause(Schema.unknown)));
159
160
  function isFailureFrom(value) {
160
- return (0, _Predicate.hasProperty)(value, "_tag") && value._tag === "Failure" && (0, _Predicate.hasProperty)(value, "cause") && isCauseFrom(value.cause) && (0, _Predicate.hasProperty)(value, "timestamp") && typeof value.timestamp === "number" && ((0, _Predicate.hasProperty)(value, "refreshing") ? isLoadingFrom(value.refreshing) : true);
161
+ return (0, _Predicate.hasProperty)(value, "_tag") && value._tag === "Failure" && (0, _Predicate.hasProperty)(value, "cause") && isCauseFrom(value.cause) && (0, _Predicate.hasProperty)(value, "timestamp") && typeof value.timestamp === "number" && ((0, _Predicate.hasProperty)(value, "refreshing") ? value.refreshing === undefined || isLoadingFrom(value.refreshing) : true);
161
162
  }
162
163
  function isSuccessFrom(value) {
163
- return (0, _Predicate.hasProperty)(value, "_tag") && value._tag === "Success" && (0, _Predicate.hasProperty)(value, "value") && (0, _Predicate.hasProperty)(value, "timestamp") && typeof value.timestamp === "number" && ((0, _Predicate.hasProperty)(value, "refreshing") ? isLoadingFrom(value.refreshing) : true);
164
+ return (0, _Predicate.hasProperty)(value, "_tag") && value._tag === "Success" && (0, _Predicate.hasProperty)(value, "value") && (0, _Predicate.hasProperty)(value, "timestamp") && typeof value.timestamp === "number" && ((0, _Predicate.hasProperty)(value, "refreshing") ? value.refreshing === undefined || isLoadingFrom(value.refreshing) : true);
164
165
  }
165
166
  function isOptimisticFrom(value) {
166
167
  return (0, _Predicate.hasProperty)(value, "_tag") && value._tag === "Optimistic" && (0, _Predicate.hasProperty)(value, "value") && (0, _Predicate.hasProperty)(value, "previous") && isAsyncDataFrom(value.previous) && (0, _Predicate.hasProperty)(value, "timestamp") && typeof value.timestamp === "number";
@@ -172,13 +173,13 @@ function isAsyncDataFrom(value) {
172
173
  * @since 1.0.0
173
174
  */
174
175
  const asyncDataFromJson = (error, value) => {
175
- return Schema.declare([Schema.cause(error, Schema.unknown), value], (causeSchema, valueSchema) => {
176
- const parseCause = Schema.decode(causeSchema);
177
- const parseValue = Schema.decode(valueSchema);
176
+ const schema = Schema.declare([Schema.cause(error, Schema.unknown), value], (causeSchema, valueSchema) => {
177
+ const parseCause = Parser.decode(causeSchema);
178
+ const parseValue = Parser.decode(valueSchema);
178
179
  const parseAsyncData = (input, options) => {
179
180
  return Effect.gen(function* (_) {
180
181
  if (!isAsyncDataFrom(input)) {
181
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
182
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
182
183
  }
183
184
  switch (input._tag) {
184
185
  case "NoData":
@@ -186,18 +187,18 @@ const asyncDataFromJson = (error, value) => {
186
187
  return input;
187
188
  case "Failure":
188
189
  {
189
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue);
190
+ const cause = yield* _(parseCause(input.cause, options));
190
191
  return FailureFrom(cause, input.timestamp, input.refreshing);
191
192
  }
192
193
  case "Success":
193
194
  {
194
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
195
+ const a = yield* _(parseValue(input.value, options));
195
196
  return SuccessFrom(a, input.timestamp, input.refreshing);
196
197
  }
197
198
  case "Optimistic":
198
199
  {
199
200
  const previous = yield* _(parseAsyncData(input.previous, options));
200
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
201
+ const value = yield* _(parseValue(input.value, options));
201
202
  return OptimisticFrom(value, input.timestamp, previous);
202
203
  }
203
204
  }
@@ -205,12 +206,12 @@ const asyncDataFromJson = (error, value) => {
205
206
  };
206
207
  return parseAsyncData;
207
208
  }, (causeSchema, valueSchema) => {
208
- const parseCause = Schema.encode(causeSchema);
209
- const parseValue = Schema.encode(valueSchema);
209
+ const parseCause = Parser.encode(causeSchema);
210
+ const parseValue = Parser.encode(valueSchema);
210
211
  const parseAsyncData = (input, options) => {
211
212
  return Effect.gen(function* (_) {
212
213
  if (!isAsyncDataFrom(input)) {
213
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
214
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
214
215
  }
215
216
  switch (input._tag) {
216
217
  case "NoData":
@@ -218,18 +219,18 @@ const asyncDataFromJson = (error, value) => {
218
219
  return input;
219
220
  case "Failure":
220
221
  {
221
- const cause = yield* _(parseCause(causeFromToCause(input.cause), options), parseErrorToParseIssue);
222
+ const cause = yield* _(parseCause(causeFromToCause(input.cause), options));
222
223
  return FailureFrom(cause, input.timestamp, input.refreshing);
223
224
  }
224
225
  case "Success":
225
226
  {
226
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
227
+ const a = yield* _(parseValue(input.value, options));
227
228
  return SuccessFrom(a, input.timestamp, input.refreshing);
228
229
  }
229
230
  case "Optimistic":
230
231
  {
231
232
  const previous = yield* _(parseAsyncData(input.previous, options));
232
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
233
+ const value = yield* _(parseValue(input.value, options));
233
234
  return OptimisticFrom(value, input.timestamp, previous);
234
235
  }
235
236
  }
@@ -238,73 +239,31 @@ const asyncDataFromJson = (error, value) => {
238
239
  return parseAsyncData;
239
240
  }, {
240
241
  title: "AsyncDataFrom",
241
- equivalence: () => fromEq
242
+ equivalence: () => fromEq,
243
+ arbitrary: (causeArb, valueArb) => fc => asyncDataArbitrary(causeArb, valueArb)(fc).map(asyncDataToAsyncDataFrom),
244
+ pretty: (causePretty, valuePretty) => from => asyncDataPretty(causePretty, valuePretty)(asyncDataFromToAsyncData(from))
242
245
  });
246
+ return schema;
243
247
  };
244
248
  /**
245
249
  * @since 1.0.0
246
250
  */
247
251
  exports.asyncDataFromJson = asyncDataFromJson;
248
252
  const asyncData = (errorSchema, valueSchema) => {
249
- const encodeCause = Schema.encode(Schema.cause(Schema.to(errorSchema)));
250
- return asyncDataFromJson(errorSchema, valueSchema).pipe(Schema.transformOrFail(asyncDataFromSelf(Schema.to(errorSchema), Schema.to(valueSchema)), function decodeAsyncDataFrom(c, options) {
251
- switch (c._tag) {
252
- case "NoData":
253
- return Effect.succeed(AsyncData.noData());
254
- case "Loading":
255
- return Effect.succeed(loadingFromJson(c));
256
- case "Failure":
257
- {
258
- return Effect.succeed(AsyncData.failCause(causeFromToCause(c.cause), {
259
- timestamp: c.timestamp,
260
- refreshing: loadingFromJson(c.refreshing)
261
- }));
262
- }
263
- case "Success":
264
- {
265
- return Effect.succeed(AsyncData.success(c.value, {
266
- timestamp: c.timestamp,
267
- refreshing: loadingFromJson(c.refreshing)
268
- }));
269
- }
270
- case "Optimistic":
271
- {
272
- return Effect.map(decodeAsyncDataFrom(c.previous, options), previous => AsyncData.optimistic(previous, c.value, {
273
- timestamp: c.timestamp
274
- }));
275
- }
276
- }
277
- }, function encodeAsyncDataFrom(a, options) {
278
- switch (a._tag) {
279
- case "NoData":
280
- return Effect.succeed({
281
- _tag: "NoData"
282
- });
283
- case "Loading":
284
- return Effect.succeed(loadingToJson(a));
285
- case "Failure":
286
- return Effect.map(parseErrorToParseIssue(encodeCause(a.cause, options)), cause => FailureFrom(cause, a.timestamp, Option.getOrUndefined(Option.map(a.refreshing, loadingToJson))));
287
- case "Success":
288
- return Effect.succeed(SuccessFrom(a.value, a.timestamp, Option.getOrUndefined(Option.map(a.refreshing, loadingToJson))));
289
- case "Optimistic":
290
- {
291
- return Effect.map(encodeAsyncDataFrom(a.previous, options), previous => OptimisticFrom(a.value, a.timestamp, previous));
292
- }
293
- }
294
- }));
253
+ return asyncDataFromJson(errorSchema, valueSchema).pipe(Schema.transform(asyncDataFromSelf(Schema.to(errorSchema), Schema.to(valueSchema)), asyncDataFromToAsyncData, asyncDataToAsyncDataFrom));
295
254
  };
296
255
  /**
297
256
  * @since 1.0.0
298
257
  */
299
258
  exports.asyncData = asyncData;
300
259
  const asyncDataFromSelf = (error, value) => {
301
- return Schema.declare([Schema.causeFromSelf(error), value], (causeSchema, valueSchema) => {
302
- const parseCause = Schema.decode(causeSchema);
303
- const parseValue = Schema.decode(valueSchema);
260
+ const schema = Schema.declare([Schema.causeFromSelf(error), value], (causeSchema, valueSchema) => {
261
+ const parseCause = Parser.decode(causeSchema);
262
+ const parseValue = Parser.decode(valueSchema);
304
263
  const parseAsyncData = (input, options) => {
305
264
  return Effect.gen(function* (_) {
306
265
  if (!AsyncData.isAsyncData(input)) {
307
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
266
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
308
267
  }
309
268
  switch (input._tag) {
310
269
  case "NoData":
@@ -312,7 +271,7 @@ const asyncDataFromSelf = (error, value) => {
312
271
  return input;
313
272
  case "Failure":
314
273
  {
315
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue);
274
+ const cause = yield* _(parseCause(input.cause, options));
316
275
  return AsyncData.failCause(cause, {
317
276
  timestamp: input.timestamp,
318
277
  refreshing: Option.getOrUndefined(input.refreshing)
@@ -320,7 +279,7 @@ const asyncDataFromSelf = (error, value) => {
320
279
  }
321
280
  case "Success":
322
281
  {
323
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
282
+ const a = yield* _(parseValue(input.value, options));
324
283
  return AsyncData.success(a, {
325
284
  timestamp: input.timestamp,
326
285
  refreshing: Option.getOrUndefined(input.refreshing)
@@ -329,7 +288,7 @@ const asyncDataFromSelf = (error, value) => {
329
288
  case "Optimistic":
330
289
  {
331
290
  const previous = yield* _(parseAsyncData(input.previous, options));
332
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
291
+ const value = yield* _(parseValue(input.value, options));
333
292
  return AsyncData.optimistic(previous, value, {
334
293
  timestamp: input.timestamp
335
294
  });
@@ -339,18 +298,20 @@ const asyncDataFromSelf = (error, value) => {
339
298
  };
340
299
  return parseAsyncData;
341
300
  }, (causeSchema, valueSchema) => {
342
- const parseCause = Schema.encode(causeSchema);
343
- const parseValue = Schema.encode(valueSchema);
301
+ const parseCause = Parser.encode(causeSchema);
302
+ const parseValue = Parser.encode(valueSchema);
344
303
  const parseAsyncData = (input, options) => {
345
304
  return Effect.gen(function* (_) {
346
- if (!AsyncData.isAsyncData(input)) return yield* _(Effect.fail(ParseResult.forbidden(input)));
305
+ if (!AsyncData.isAsyncData(input)) {
306
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
307
+ }
347
308
  switch (input._tag) {
348
309
  case "NoData":
349
310
  case "Loading":
350
311
  return input;
351
312
  case "Failure":
352
313
  {
353
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue);
314
+ const cause = yield* _(parseCause(input.cause, options));
354
315
  return AsyncData.failCause(cause, {
355
316
  timestamp: input.timestamp,
356
317
  refreshing: Option.getOrUndefined(input.refreshing)
@@ -358,7 +319,7 @@ const asyncDataFromSelf = (error, value) => {
358
319
  }
359
320
  case "Success":
360
321
  {
361
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
322
+ const a = yield* _(parseValue(input.value, options));
362
323
  return AsyncData.success(a, {
363
324
  timestamp: input.timestamp,
364
325
  refreshing: Option.getOrUndefined(input.refreshing)
@@ -367,7 +328,7 @@ const asyncDataFromSelf = (error, value) => {
367
328
  case "Optimistic":
368
329
  {
369
330
  const previous = yield* _(parseAsyncData(input.previous, options));
370
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
331
+ const value = yield* _(parseValue(input.value, options));
371
332
  return AsyncData.optimistic(previous, value, {
372
333
  timestamp: input.timestamp
373
334
  });
@@ -382,6 +343,7 @@ const asyncDataFromSelf = (error, value) => {
382
343
  arbitrary: asyncDataArbitrary,
383
344
  equivalence: () => _effect.Equal.equals
384
345
  });
346
+ return schema;
385
347
  };
386
348
  exports.asyncDataFromSelf = asyncDataFromSelf;
387
349
  function asyncDataPretty(E, A) {
@@ -456,7 +418,98 @@ function fiberIdFromToFiberId(id) {
456
418
  return _effect.FiberId.composite(fiberIdFromToFiberId(id.left), fiberIdFromToFiberId(id.right));
457
419
  }
458
420
  }
459
- function parseErrorToParseIssue(effect) {
460
- return Effect.catchTag(effect, "ParseError", error => Effect.fail(error.error));
421
+ function causeToCauseFrom(cause) {
422
+ switch (cause._tag) {
423
+ case "Die":
424
+ return {
425
+ _tag: "Die",
426
+ defect: cause.defect
427
+ };
428
+ case "Empty":
429
+ return {
430
+ _tag: "Empty"
431
+ };
432
+ case "Fail":
433
+ return {
434
+ _tag: "Fail",
435
+ error: cause.error
436
+ };
437
+ case "Interrupt":
438
+ return {
439
+ _tag: "Interrupt",
440
+ fiberId: fiberIdToFiberIdFrom(cause.fiberId)
441
+ };
442
+ case "Parallel":
443
+ return {
444
+ _tag: "Parallel",
445
+ left: causeToCauseFrom(cause.left),
446
+ right: causeToCauseFrom(cause.right)
447
+ };
448
+ case "Sequential":
449
+ return {
450
+ _tag: "Sequential",
451
+ left: causeToCauseFrom(cause.left),
452
+ right: causeToCauseFrom(cause.right)
453
+ };
454
+ }
455
+ }
456
+ function fiberIdToFiberIdFrom(id) {
457
+ switch (id._tag) {
458
+ case "None":
459
+ return {
460
+ _tag: "None"
461
+ };
462
+ case "Runtime":
463
+ return {
464
+ _tag: "Runtime",
465
+ id: id.id,
466
+ startTimeMillis: id.startTimeMillis
467
+ };
468
+ case "Composite":
469
+ return {
470
+ _tag: "Composite",
471
+ left: fiberIdToFiberIdFrom(id.left),
472
+ right: fiberIdToFiberIdFrom(id.right)
473
+ };
474
+ }
475
+ }
476
+ const NO_DATA_FROM = {
477
+ _tag: "NoData"
478
+ };
479
+ function asyncDataToAsyncDataFrom(data) {
480
+ switch (data._tag) {
481
+ case "NoData":
482
+ return NO_DATA_FROM;
483
+ case "Loading":
484
+ return loadingToJson(data);
485
+ case "Failure":
486
+ return FailureFrom(causeToCauseFrom(data.cause), data.timestamp, Option.getOrUndefined(Option.map(data.refreshing, loadingToJson)));
487
+ case "Success":
488
+ return SuccessFrom(data.value, data.timestamp, Option.getOrUndefined(Option.map(data.refreshing, loadingToJson)));
489
+ case "Optimistic":
490
+ return OptimisticFrom(data.value, data.timestamp, asyncDataToAsyncDataFrom(data.previous));
491
+ }
492
+ }
493
+ function asyncDataFromToAsyncData(data) {
494
+ switch (data._tag) {
495
+ case "NoData":
496
+ return AsyncData.noData();
497
+ case "Loading":
498
+ return loadingFromJson(data);
499
+ case "Failure":
500
+ return AsyncData.failCause(causeFromToCause(data.cause), {
501
+ timestamp: data.timestamp,
502
+ refreshing: loadingFromJson(data.refreshing)
503
+ });
504
+ case "Success":
505
+ return AsyncData.success(data.value, {
506
+ timestamp: data.timestamp,
507
+ refreshing: loadingFromJson(data.refreshing)
508
+ });
509
+ case "Optimistic":
510
+ return AsyncData.optimistic(asyncDataFromToAsyncData(data.previous), data.value, {
511
+ timestamp: data.timestamp
512
+ });
513
+ }
461
514
  }
462
515
  //# sourceMappingURL=Schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.js","names":["Arbitrary","_interopRequireWildcard","require","AST","Eq","ParseResult","Pretty","Schema","AsyncData","_effect","Cause","Effect","Option","_Predicate","P","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","NO_DATA_PRETTY","LOADING_PRETTY","loading","match","progress","onNone","timestamp","onSome","pretty","FAILURE_PRETTY","print","failure","refreshing","cause","SUCCESS_PRETTY","success","value","OPTIMISTIC_PRETTY","printError","printValue","optimistic","asyncDataPretty","previous","ProgressSchemaJson","struct","loaded","bigint","total","optional","ProgressSchema","data","bigintFromSelf","optionFromSelf","progressArbitrary","fc","bigInt","chain","option","min","map","make","Progress","exports","pipe","transform","json","getOrUndefined","annotations","IdentifierAnnotationId","PrettyHookId","ArbitraryHookId","EquivalenceHookId","Equal","equals","loadingArbitrary","Date","now","undefined","failureArbitrary","date","failCause","getTime","FailureFrom","base","_tag","successArbitrary","SuccessFrom","OptimisticFrom","optimisticArbitrary","causeArb","valueArb","asyncDataArbitrary","fromEq","b","loadingB","Data","failureB","successB","optimisticB","isNoDataFrom","hasProperty","isProgressFrom","isLoadingFrom","isCauseFrom","is","from","unknown","isFailureFrom","isSuccessFrom","isOptimisticFrom","isAsyncDataFrom","asyncDataFromJson","error","declare","causeSchema","valueSchema","parseCause","decode","parseValue","parseAsyncData","input","options","gen","_","fail","forbidden","parseErrorToParseIssue","encode","causeFromToCause","title","equivalence","asyncData","errorSchema","encodeCause","to","transformOrFail","asyncDataFromSelf","decodeAsyncDataFrom","c","succeed","noData","loadingFromJson","encodeAsyncDataFrom","loadingToJson","causeFromSelf","isAsyncData","arbitrary","E","A","NoData","Loading","Failure","Success","Optimistic","failureArb","successArb","optimisticArb","oneof","constant","progressFromJson","none","some","BigInt","progressToJson","progres","isNone","toString","isSome","die","defect","empty","interrupt","fiberIdFromToFiberId","fiberId","parallel","left","right","sequential","id","FiberId","runtime","startTimeMillis","composite","effect","catchTag"],"sources":["../../src/Schema.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"Schema.js","names":["Arbitrary","_interopRequireWildcard","require","AST","Eq","Parser","ParseResult","Pretty","Schema","AsyncData","_effect","Cause","Effect","Option","_Predicate","P","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","NO_DATA_PRETTY","LOADING_PRETTY","loading","match","progress","onNone","timestamp","onSome","pretty","FAILURE_PRETTY","print","failure","refreshing","cause","SUCCESS_PRETTY","success","value","OPTIMISTIC_PRETTY","printError","printValue","optimistic","asyncDataPretty","previous","ProgressSchemaJson","struct","loaded","bigint","total","optional","ProgressSchema","data","bigintFromSelf","optionFromSelf","progressArbitrary","fc","bigInt","chain","option","min","map","make","Progress","exports","pipe","transform","json","getOrUndefined","annotations","IdentifierAnnotationId","PrettyHookId","ArbitraryHookId","EquivalenceHookId","Equal","equals","loadingArbitrary","Date","now","undefined","failureArbitrary","date","failCause","getTime","FailureFrom","base","_tag","successArbitrary","SuccessFrom","OptimisticFrom","optimisticArbitrary","causeArb","valueArb","asyncDataArbitrary","fromEq","b","loadingB","Data","failureB","successB","optimisticB","isNoDataFrom","hasProperty","isProgressFrom","isLoadingFrom","isCauseFrom","is","from","unknown","isFailureFrom","isSuccessFrom","isOptimisticFrom","isAsyncDataFrom","asyncDataFromJson","error","schema","declare","causeSchema","valueSchema","parseCause","decode","parseValue","parseAsyncData","input","options","gen","_","fail","forbidden","ast","encode","causeFromToCause","title","equivalence","arbitrary","asyncDataToAsyncDataFrom","causePretty","valuePretty","asyncDataFromToAsyncData","asyncData","errorSchema","asyncDataFromSelf","to","causeFromSelf","isAsyncData","E","A","NoData","Loading","Failure","Success","Optimistic","failureArb","successArb","optimisticArb","oneof","constant","noData","progressFromJson","none","some","BigInt","progressToJson","progres","isNone","toString","loadingFromJson","loadingToJson","isSome","die","defect","empty","interrupt","fiberIdFromToFiberId","fiberId","parallel","left","right","sequential","id","FiberId","runtime","startTimeMillis","composite","causeToCauseFrom","fiberIdToFiberIdFrom","NO_DATA_FROM"],"sources":["../../src/Schema.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,SAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,GAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,EAAA,gBAAAH,uBAAA,eAAAC,OAAA;AACA,IAAAG,MAAA,gBAAAJ,uBAAA,eAAAC,OAAA;AACA,IAAAI,WAAA,gBAAAL,uBAAA,eAAAC,OAAA;AACA,IAAAK,MAAA,gBAAAN,uBAAA,eAAAC,OAAA;AACA,IAAAM,MAAA,gBAAAP,uBAAA,eAAAC,OAAA;AACA,IAAAO,SAAA,gBAAAR,uBAAA,eAAAC,OAAA;AACA,IAAAQ,OAAA,gBAAAR,OAAA;AACA,IAAAS,KAAA,gBAAAV,uBAAA,eAAAC,OAAA;AACA,IAAAU,MAAA,gBAAAX,uBAAA,eAAAC,OAAA;AACA,IAAAW,MAAA,gBAAAZ,uBAAA,eAAAC,OAAA;AACA,IAAAY,UAAA,gBAAAZ,OAAA;AACA,IAAAa,CAAA,gBAAAd,uBAAA,eAAAC,OAAA;AAAkC,SAAAc,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAhB,wBAAAgB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAjBlC;;;;AAmBA,MAAMY,cAAc,GAAG,kBAAkB;AACzC,MAAMC,cAAc,GAAIC,OAA0B,IAChD1B,MAAM,CAAC2B,KAAK,CAACD,OAAO,CAACE,QAAQ,EAAE;EAC7BC,MAAM,EAAEA,CAAA,KAAM,+BAA+BH,OAAO,CAACI,SAAS,GAAG;EACjEC,MAAM,EAAGH,QAAQ,IAAK,+BAA+BF,OAAO,CAACI,SAAS,cAAc5B,CAAC,CAAC8B,MAAM,CAACJ,QAAQ,CAAC;CACvG,CAAC;AACJ,MAAMK,cAAc,GAAOC,KAAoC,IAAMC,OAA6B,IAChGnC,MAAM,CAAC2B,KAAK,CAACQ,OAAO,CAACC,UAAU,EAAE;EAC/BP,MAAM,EAAEA,CAAA,KAAM,+BAA+BM,OAAO,CAACL,SAAS,WAAWI,KAAK,CAACC,OAAO,CAACE,KAAK,CAAC,GAAG;EAChGN,MAAM,EAAEA,CAAA,KAAM,+BAA+BI,OAAO,CAACL,SAAS,4BAA4BI,KAAK,CAACC,OAAO,CAACE,KAAK,CAAC;CAC/G,CAAC;AACJ,MAAMC,cAAc,GAAOJ,KAAuB,IAAMK,OAA6B,IACnFvC,MAAM,CAAC2B,KAAK,CAACY,OAAO,CAACH,UAAU,EAAE;EAC/BP,MAAM,EAAEA,CAAA,KAAM,+BAA+BU,OAAO,CAACT,SAAS,WAAWI,KAAK,CAACK,OAAO,CAACC,KAAK,CAAC,GAAG;EAChGT,MAAM,EAAEA,CAAA,KAAM,+BAA+BQ,OAAO,CAACT,SAAS,4BAA4BI,KAAK,CAACK,OAAO,CAACC,KAAK,CAAC;CAC/G,CAAC;AAEJ,MAAMC,iBAAiB,GACrBA,CAAOC,UAAyC,EAAEC,UAA4B,KAC7EC,UAAsC,IACrC,kCAAkCA,UAAU,CAACd,SAAS,WAAWa,UAAU,CAACC,UAAU,CAACJ,KAAK,CAAC,cAC3FK,eAAe,CAACH,UAAU,EAAEC,UAAU,CAAC,CAACC,UAAU,CAACE,QAAQ,CAC7D,GAAG;AAOP,MAAMC,kBAAkB,gBAAGpD,MAAM,CAACqD,MAAM,CAAC;EACvCC,MAAM,EAAEtD,MAAM,CAACuD,MAAM;EACrBC,KAAK,eAAExD,MAAM,CAACyD,QAAQ,CAACzD,MAAM,CAACuD,MAAM;CACrC,CAAC;AAEF,MAAMG,cAAc,gBAOhB1D,MAAM,CAAC2D,IAAI,eAAC3D,MAAM,CAACqD,MAAM,CAAC;EAC5BC,MAAM,EAAEtD,MAAM,CAAC4D,cAAc;EAC7BJ,KAAK,eAAExD,MAAM,CAAC6D,cAAc,CAAC7D,MAAM,CAAC4D,cAAc;CACnD,CAAC,CAAC;AAEH,MAAME,iBAAiB,GAAqCC,EAAE,IAC5DA,EAAE,CAACC,MAAM,EAAE,CAACC,KAAK,CAAEX,MAAM,IAAKS,EAAE,CAACG,MAAM,CAACH,EAAE,CAACC,MAAM,CAAC;EAAEG,GAAG,EAAEb;AAAM,CAAE,CAAC,CAAC,CAACc,GAAG,CAAEZ,KAAK,IAAKjD,CAAC,CAAC8D,IAAI,CAACf,MAAM,EAAEE,KAAK,CAAC,CAAC,CAAC;AAE5G;;;AAGO,MAAMc,QAAQ,GAAAC,OAAA,CAAAD,QAAA,gBAIjBlB,kBAAkB,CAACoB,IAAI,eACzBxE,MAAM,CAACyE,SAAS,CACdf,cAAc,EACbgB,IAAI,IAAiBnE,CAAC,CAAC8D,IAAI,CAACK,IAAI,CAACpB,MAAM,EAAEoB,IAAI,CAAClB,KAAK,CAAC,EACpDvB,QAAQ,KAAM;EACbqB,MAAM,EAAErB,QAAQ,CAACqB,MAAM;EACvBE,KAAK,EAAEnD,MAAM,CAACsE,cAAc,CAAC1C,QAAQ,CAACuB,KAAK;CAC5C,CAAC,CACH,eACDxD,MAAM,CAAC4E,WAAW,CAAC;EACjB,CAACjF,GAAG,CAACkF,sBAAsB,GAAG,UAAU;EACxC,CAAC9E,MAAM,CAAC+E,YAAY,GAAG,MAAM,UAAU;EACvC,CAACtF,SAAS,CAACuF,eAAe,GAAG,MAAuCjB,iBAAiB;EACrF,CAAClE,EAAE,CAACoF,iBAAiB,GAAG,MAAMC,aAAK,CAACC;CACrC,CAAC,CACH;AAUD,MAAMC,gBAAgB,GAA4CpB,EAAE,IAClEA,EAAE,CAACG,MAAM,CAACJ,iBAAiB,CAACC,EAAE,CAAC,CAAC,CAACK,GAAG,CAAEnC,QAAQ,IAC5ChC,SAAS,CAAC8B,OAAO,CAAC;EAChBI,SAAS,EAAEiD,IAAI,CAACC,GAAG,EAAE;EACrBpD,QAAQ,EAAEA,QAAQ,IAAIqD;CACvB,CAAC,CACH;AAWH,MAAMC,gBAAgB,GACpB7C,KAA0C,IAE3CqB,EAAE,IACDA,EAAE,CAACG,MAAM,CAACiB,gBAAgB,CAACpB,EAAE,CAAC,CAAC,CAACE,KAAK,CAAExB,UAAU,IAC/CC,KAAK,CAACqB,EAAE,CAAC,CAACE,KAAK,CAAEvB,KAAK,IACpBqB,EAAE,CAACyB,IAAI,EAAE,CAACpB,GAAG,CAAEoB,IAAI,IACjBvF,SAAS,CAACwF,SAAS,CAAC/C,KAAK,EAAE;EACzBP,SAAS,EAAEqD,IAAI,CAACE,OAAO,EAAE;EACzBjD,UAAU,EAAEA,UAAU,IAAI6C;CAC3B,CAAC,CACH,CACF,CACF;AAYH,MAAMK,WAAW,GAAGA,CAAIjD,KAA0B,EAAEP,SAAiB,EAAEM,UAAwB,KAAoB;EACjH,MAAMmD,IAAI,GAAG;IACXC,IAAI,EAAE,SAAS;IACfnD,KAAK;IACLP;GACQ;EAEV,IAAIM,UAAU,KAAK6C,SAAS,EAAE;IAC5B,OAAO;MAAE,GAAGM,IAAI;MAAEnD;IAAU,CAAE;EAChC;EAEA,OAAOmD,IAAI;AACb,CAAC;AAED,MAAME,gBAAgB,GACpBjD,KAA6B,IAE9BkB,EAAE,IACDA,EAAE,CAACG,MAAM,CAACiB,gBAAgB,CAACpB,EAAE,CAAC,CAAC,CAACE,KAAK,CAAExB,UAAU,IAC/CI,KAAK,CAACkB,EAAE,CAAC,CAACE,KAAK,CAAE9C,CAAC,IAChB4C,EAAE,CAACyB,IAAI,EAAE,CAACpB,GAAG,CAAEoB,IAAI,IACjBvF,SAAS,CAAC2C,OAAO,CAACzB,CAAC,EAAE;EACnBgB,SAAS,EAAEqD,IAAI,CAACE,OAAO,EAAE;EACzBjD,UAAU,EAAEA,UAAU,IAAI6C;CAC3B,CAAC,CACH,CACF,CACF;AAYH,MAAMS,WAAW,GAAGA,CAAIlD,KAAQ,EAAEV,SAAiB,EAAEM,UAAwB,KAAoB;EAC/F,MAAMmD,IAAI,GAAG;IACXC,IAAI,EAAE,SAAS;IACfhD,KAAK;IACLV;GACQ;EAEV,IAAIM,UAAU,KAAK6C,SAAS,EAAE;IAC5B,OAAO;MAAE,GAAGM,IAAI;MAAEnD;IAAU,CAAE;EAChC;EAEA,OAAOmD,IAAI;AACb,CAAC;AAYD,MAAMI,cAAc,GAAGA,CAAOnD,KAAQ,EAAEV,SAAiB,EAAEgB,QAA6B,MAA4B;EAClH0C,IAAI,EAAE,YAAY;EAClBhD,KAAK;EACLV,SAAS;EACTgB;CACD,CAAC;AAEF,MAAM8C,mBAAmB,GAAGA,CAC1BC,QAA6C,EAC7CC,QAAgC,KAEjCpC,EAAE,IACDqC,kBAAkB,CAACF,QAAQ,EAAEC,QAAQ,CAAC,CAACpC,EAAE,CAAC,CAACE,KAAK,CAAEd,QAAQ,IACxDgD,QAAQ,CAACpC,EAAE,CAAC,CAACE,KAAK,CAAEpB,KAAK,IACvBkB,EAAE,CAACyB,IAAI,EAAE,CAACpB,GAAG,CAAEoB,IAAI,IAAKvF,SAAS,CAACgD,UAAU,CAACE,QAAQ,EAAEN,KAAK,EAAE;EAAEV,SAAS,EAAEqD,IAAI,CAACE,OAAO;AAAE,CAAE,CAAC,CAAC,CAC9F,CACF;AAOH,MAAMW,MAAM,GAAGA,CAAClF,CAA0B,EAAEmF,CAA0B,KAAa;EACjF,IAAInF,CAAC,CAAC0E,IAAI,KAAKS,CAAC,CAACT,IAAI,EAAE,OAAO,KAAK;EAEnC,QAAQ1E,CAAC,CAAC0E,IAAI;IACZ,KAAK,QAAQ;MACX,OAAO,IAAI;IACb,KAAK,SAAS;MAAE;QACd,MAAMU,QAAQ,GAAGD,CAAgB;QAEjC,IAAInF,CAAC,CAACgB,SAAS,KAAKoE,QAAQ,CAACpE,SAAS,EAAE,OAAO,KAAK;QAEpD,IAAIhB,CAAC,CAACc,QAAQ,KAAKqD,SAAS,IAAIiB,QAAQ,CAACtE,QAAQ,KAAKqD,SAAS,EAAE,OAAO,IAAI;QAC5E,IAAInE,CAAC,CAACc,QAAQ,KAAKqD,SAAS,IAAIiB,QAAQ,CAACtE,QAAQ,KAAKqD,SAAS,EAAE,OAAO,KAAK;QAE7E,OAAOL,aAAK,CAACC,MAAM,CAACsB,YAAI,CAACnD,MAAM,CAAClC,CAAC,CAACc,QAAQ,CAAC,EAAEuE,YAAI,CAACnD,MAAM,CAACkD,QAAQ,CAACtE,QAAQ,CAAC,CAAC;MAC9E;IACA,KAAK,SAAS;MAAE;QACd,MAAMwE,QAAQ,GAAGH,CAAqB;QAEtC,IACE,EACErB,aAAK,CAACC,MAAM,CAACsB,YAAI,CAACnD,MAAM,CAAClC,CAAC,CAACuB,KAAK,CAAC,EAAE8D,YAAI,CAACnD,MAAM,CAACoD,QAAQ,CAAC/D,KAAK,CAAC,CAAC,IAAIvB,CAAC,CAACgB,SAAS,KAAKsE,QAAQ,CAACtE,SAAS,CACtG,EACD,OAAO,KAAK;QAEd,IAAIhB,CAAC,CAACsB,UAAU,KAAK6C,SAAS,IAAImB,QAAQ,CAAChE,UAAU,KAAK6C,SAAS,EAAE,OAAO,IAAI;QAChF,IAAInE,CAAC,CAACsB,UAAU,KAAK6C,SAAS,IAAImB,QAAQ,CAAChE,UAAU,KAAK6C,SAAS,EAAE,OAAO,KAAK;QAEjF,OAAOL,aAAK,CAACC,MAAM,CAACsB,YAAI,CAACnD,MAAM,CAAClC,CAAC,CAACsB,UAAU,CAAC,EAAE+D,YAAI,CAACnD,MAAM,CAACoD,QAAQ,CAAChE,UAAU,CAAC,CAAC;MAClF;IACA,KAAK,SAAS;MAAE;QACd,MAAMiE,QAAQ,GAAGJ,CAAqB;QACtC,OAAOrB,aAAK,CAACC,MAAM,CAAC/D,CAAC,CAAC0B,KAAK,EAAE6D,QAAQ,CAAC7D,KAAK,CAAC,IAC1C1B,CAAC,CAACgB,SAAS,KAAKuE,QAAQ,CAACvE,SAAS,IAClC8C,aAAK,CAACC,MAAM,CAAC/D,CAAC,CAACsB,UAAU,EAAEiE,QAAQ,CAACjE,UAAU,CAAC;MACnD;IACA,KAAK,YAAY;MAAE;QACjB,MAAMkE,WAAW,GAAGL,CAA6B;QACjD,OAAOrB,aAAK,CAACC,MAAM,CAAC/D,CAAC,CAAC0B,KAAK,EAAE8D,WAAW,CAAC9D,KAAK,CAAC,IAC7C1B,CAAC,CAACgB,SAAS,KAAKwE,WAAW,CAACxE,SAAS,IACrCkE,MAAM,CAAClF,CAAC,CAACgC,QAAQ,EAAEwD,WAAW,CAACxD,QAAQ,CAAC;MAC5C;EACF;AACF,CAAC;AAED,SAASyD,YAAYA,CAAC/D,KAAc;EAClC,OAAO,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,MAAM,CAAC,IAAIA,KAAK,CAACgD,IAAI,KAAK,QAAQ;AAC9D;AAEA,SAASiB,cAAcA,CAACjE,KAAc;EACpC,IAAI,EAAE,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,QAAQ,CAAC,IAAI,OAAOA,KAAK,CAACS,MAAM,KAAK,QAAQ,CAAC,EAAE,OAAO,KAAK;EAErF,IAAI,IAAAuD,sBAAW,EAAChE,KAAK,EAAE,OAAO,CAAC,EAAE;IAC/B,IAAI,OAAOA,KAAK,CAACW,KAAK,KAAK,QAAQ,EAAE,OAAO,KAAK;EACnD;EAEA,OAAO,IAAI;AACb;AAEA,SAASuD,aAAaA,CAAClE,KAAc;EACnC,OAAO,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,MAAM,CAAC,IAC5BA,KAAK,CAACgD,IAAI,KAAK,SAAS,IACxB,IAAAgB,sBAAW,EAAChE,KAAK,EAAE,WAAW,CAAC,IAC/B,OAAOA,KAAK,CAACV,SAAS,KAAK,QAAQ,KAClC,IAAA0E,sBAAW,EAAChE,KAAK,EAAE,UAAU,CAAC,GAAGiE,cAAc,CAACjE,KAAK,CAACZ,QAAQ,CAAC,GAAG,IAAI,CAAC;AAC/E;AAEA,MAAM+E,WAAW,gBAAGhH,MAAM,CAACiH,EAAE,eAACjH,MAAM,CAACkH,IAAI,eAAClH,MAAM,CAAC0C,KAAK,CAAC1C,MAAM,CAACmH,OAAO,CAAC,CAAC,CAAC;AAExE,SAASC,aAAaA,CAACvE,KAAc;EACnC,OAAO,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,MAAM,CAAC,IAC5BA,KAAK,CAACgD,IAAI,KAAK,SAAS,IACxB,IAAAgB,sBAAW,EAAChE,KAAK,EAAE,OAAO,CAAC,IAC3BmE,WAAW,CAACnE,KAAK,CAACH,KAAK,CAAC,IACxB,IAAAmE,sBAAW,EAAChE,KAAK,EAAE,WAAW,CAAC,IAC/B,OAAOA,KAAK,CAACV,SAAS,KAAK,QAAQ,KAClC,IAAA0E,sBAAW,EAAChE,KAAK,EAAE,YAAY,CAAC,GAAGA,KAAK,CAACJ,UAAU,KAAK6C,SAAS,IAAIyB,aAAa,CAAClE,KAAK,CAACJ,UAAU,CAAC,GAAG,IAAI,CAAC;AACpH;AAEA,SAAS4E,aAAaA,CAACxE,KAAc;EACnC,OAAO,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,MAAM,CAAC,IAC5BA,KAAK,CAACgD,IAAI,KAAK,SAAS,IACxB,IAAAgB,sBAAW,EAAChE,KAAK,EAAE,OAAO,CAAC,IAC3B,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,WAAW,CAAC,IAC/B,OAAOA,KAAK,CAACV,SAAS,KAAK,QAAQ,KAClC,IAAA0E,sBAAW,EAAChE,KAAK,EAAE,YAAY,CAAC,GAAGA,KAAK,CAACJ,UAAU,KAAK6C,SAAS,IAAIyB,aAAa,CAAClE,KAAK,CAACJ,UAAU,CAAC,GAAG,IAAI,CAAC;AACpH;AAEA,SAAS6E,gBAAgBA,CAACzE,KAAc;EACtC,OAAO,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,MAAM,CAAC,IAC5BA,KAAK,CAACgD,IAAI,KAAK,YAAY,IAC3B,IAAAgB,sBAAW,EAAChE,KAAK,EAAE,OAAO,CAAC,IAC3B,IAAAgE,sBAAW,EAAChE,KAAK,EAAE,UAAU,CAAC,IAC9B0E,eAAe,CAAC1E,KAAK,CAACM,QAAQ,CAAC,IAC/B,IAAA0D,sBAAW,EAAChE,KAAK,EAAE,WAAW,CAAC,IAC/B,OAAOA,KAAK,CAACV,SAAS,KAAK,QAAQ;AAC1C;AAEA,SAASoF,eAAeA,CAA2B1E,KAAc;EAC/D,OAAO+D,YAAY,CAAC/D,KAAK,CAAC,IACrBkE,aAAa,CAAClE,KAAK,CAAC,IACpBuE,aAAa,CAACvE,KAAK,CAAC,IACpBwE,aAAa,CAACxE,KAAK,CAAC,IACpByE,gBAAgB,CAACzE,KAAK,CAAC;AAC9B;AAEA;;;AAGO,MAAM2E,iBAAiB,GAAGA,CAC/BC,KAA+B,EAC/B5E,KAA+B,KACuC;EACtE,MAAM6E,MAAM,GAAG1H,MAAM,CAAC2H,OAAO,CAC3B,CAAC3H,MAAM,CAAC0C,KAAK,CAAC+E,KAAK,EAAEzH,MAAM,CAACmH,OAAO,CAAC,EAAEtE,KAAK,CAAC,EAC5C,CAAC+E,WAAW,EAAEC,WAAW,KAAI;IAC3B,MAAMC,UAAU,GAAGjI,MAAM,CAACkI,MAAM,CAACH,WAAW,CAAC;IAC7C,MAAMI,UAAU,GAAGnI,MAAM,CAACkI,MAAM,CAACF,WAAW,CAAC;IAE7C,MAAMI,cAAc,GAAGA,CACrBC,KAAc,EACdC,OAAsC,KAKpC;MACF,OAAO/H,MAAM,CAACgI,GAAG,CAAC,WAAUC,CAAC;QAC3B,IAAI,CAACd,eAAe,CAASW,KAAK,CAAC,EAAE;UACnC,OAAO,OAAOG,CAAC,CAACjI,MAAM,CAACkI,IAAI,CAAyBxI,WAAW,CAACyI,SAAS,CAACb,MAAM,CAACc,GAAG,EAAEN,KAAK,CAAC,CAAC,CAAC;QAChG;QAEA,QAAQA,KAAK,CAACrC,IAAI;UAChB,KAAK,QAAQ;UACb,KAAK,SAAS;YACZ,OAAOqC,KAAK;UACd,KAAK,SAAS;YAAE;cACd,MAAMxF,KAAK,GAAG,OAAO2F,CAAC,CAACP,UAAU,CAACI,KAAK,CAACxF,KAAK,EAAEyF,OAAO,CAAC,CAAC;cACxD,OAAOxC,WAAW,CAACjD,KAAK,EAAEwF,KAAK,CAAC/F,SAAS,EAAE+F,KAAK,CAACzF,UAAU,CAAC;YAC9D;UACA,KAAK,SAAS;YAAE;cACd,MAAMtB,CAAC,GAAG,OAAOkH,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cACpD,OAAOpC,WAAW,CAAC5E,CAAC,EAAE+G,KAAK,CAAC/F,SAAS,EAAE+F,KAAK,CAACzF,UAAU,CAAC;YAC1D;UACA,KAAK,YAAY;YAAE;cACjB,MAAMU,QAAQ,GAAG,OAAOkF,CAAC,CAACJ,cAAc,CAACC,KAAK,CAAC/E,QAAQ,EAAEgF,OAAO,CAAC,CAAC;cAClE,MAAMtF,KAAK,GAAG,OAAOwF,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cACxD,OAAOnC,cAAc,CAACnD,KAAK,EAAEqF,KAAK,CAAC/F,SAAS,EAAEgB,QAAQ,CAAC;YACzD;QACF;MACF,CAAC,CAAC;IACJ,CAAC;IAED,OAAO8E,cAAc;EACvB,CAAC,EACD,CAACL,WAAW,EAAEC,WAAW,KAAI;IAC3B,MAAMC,UAAU,GAAGjI,MAAM,CAAC4I,MAAM,CAACb,WAAW,CAAC;IAC7C,MAAMI,UAAU,GAAGnI,MAAM,CAAC4I,MAAM,CAACZ,WAAW,CAAC;IAE7C,MAAMI,cAAc,GAAGA,CACrBC,KAAc,EACdC,OAA0B,KAKxB;MACF,OAAO/H,MAAM,CAACgI,GAAG,CAAC,WAAUC,CAAC;QAC3B,IAAI,CAACd,eAAe,CAAOW,KAAK,CAAC,EAAE;UACjC,OAAO,OAAOG,CAAC,CAACjI,MAAM,CAACkI,IAAI,CAAyBxI,WAAW,CAACyI,SAAS,CAACb,MAAM,CAACc,GAAG,EAAEN,KAAK,CAAC,CAAC,CAAC;QAChG;QAEA,QAAQA,KAAK,CAACrC,IAAI;UAChB,KAAK,QAAQ;UACb,KAAK,SAAS;YACZ,OAAOqC,KAAK;UACd,KAAK,SAAS;YAAE;cACd,MAAMxF,KAAK,GAAG,OAAO2F,CAAC,CAACP,UAAU,CAACY,gBAAgB,CAACR,KAAK,CAACxF,KAAK,CAAC,EAAEyF,OAAO,CAAC,CAAC;cAC1E,OAAOxC,WAAW,CAACjD,KAAK,EAAEwF,KAAK,CAAC/F,SAAS,EAAE+F,KAAK,CAACzF,UAAU,CAAC;YAC9D;UACA,KAAK,SAAS;YAAE;cACd,MAAMtB,CAAC,GAAG,OAAOkH,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cACpD,OAAOpC,WAAW,CAAC5E,CAAC,EAAE+G,KAAK,CAAC/F,SAAS,EAAE+F,KAAK,CAACzF,UAAU,CAAC;YAC1D;UACA,KAAK,YAAY;YAAE;cACjB,MAAMU,QAAQ,GAAG,OAAOkF,CAAC,CAACJ,cAAc,CAACC,KAAK,CAAC/E,QAAQ,EAAEgF,OAAO,CAAC,CAAC;cAClE,MAAMtF,KAAK,GAAG,OAAOwF,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cACxD,OAAOnC,cAAc,CAACnD,KAAK,EAAEqF,KAAK,CAAC/F,SAAS,EAAEgB,QAAQ,CAAC;YACzD;QACF;MACF,CAAC,CAAC;IACJ,CAAC;IAED,OAAO8E,cAAc;EACvB,CAAC,EACD;IACEU,KAAK,EAAE,eAAe;IACtBC,WAAW,EAAEA,CAAA,KAAMvC,MAAM;IACzBwC,SAAS,EAAEA,CAAC3C,QAAQ,EAAEC,QAAQ,KAAMpC,EAAE,IACpCqC,kBAAkB,CAACF,QAAQ,EAAEC,QAAQ,CAAC,CAACpC,EAAE,CAAC,CAACK,GAAG,CAAC0E,wBAAwB,CAAC;IAC1EzG,MAAM,EAAEA,CAAC0G,WAAW,EAAEC,WAAW,KAAM9B,IAAI,IACzChE,eAAe,CAAC6F,WAAW,EAAEC,WAAW,CAAC,CAACC,wBAAwB,CAAC/B,IAAI,CAAC;GAC3E,CACF;EAED,OAAOQ,MAAM;AACf,CAAC;AAED;;;AAAAnD,OAAA,CAAAiD,iBAAA,GAAAA,iBAAA;AAGO,MAAM0B,SAAS,GAAGA,CACvBC,WAAqC,EACrCtB,WAAqC,KACuC;EAC5E,OAAOL,iBAAiB,CAAC2B,WAAW,EAAEtB,WAAW,CAAC,CAC/CrD,IAAI,CAACxE,MAAM,CAACyE,SAAS,CACpB2E,iBAAiB,CAACpJ,MAAM,CAACqJ,EAAE,CAACF,WAAW,CAAC,EAAEnJ,MAAM,CAACqJ,EAAE,CAACxB,WAAW,CAAC,CAAC,EACjEoB,wBAAwB,EACxBH,wBAAwB,CACzB,CAAC;AACN,CAAC;AAED;;;AAAAvE,OAAA,CAAA2E,SAAA,GAAAA,SAAA;AAGO,MAAME,iBAAiB,GAAGA,CAC/B3B,KAA+B,EAC/B5E,KAA+B,KACmD;EAClF,MAAM6E,MAAM,GAAG1H,MAAM,CAAC2H,OAAO,CAC3B,CAAC3H,MAAM,CAACsJ,aAAa,CAAC7B,KAAK,CAAC,EAAE5E,KAAK,CAAC,EACpC,CAAC+E,WAAW,EAAEC,WAAW,KAAI;IAC3B,MAAMC,UAAU,GAAGjI,MAAM,CAACkI,MAAM,CAACH,WAAW,CAAC;IAC7C,MAAMI,UAAU,GAAGnI,MAAM,CAACkI,MAAM,CAACF,WAAW,CAAC;IAE7C,MAAMI,cAAc,GAAGA,CACrBC,KAAc,EACdC,OAA0B,KAKxB;MACF,OAAO/H,MAAM,CAACgI,GAAG,CAAC,WAAUC,CAAC;QAC3B,IAAI,CAACpI,SAAS,CAACsJ,WAAW,CAASrB,KAAK,CAAC,EAAE;UACzC,OAAO,OAAOG,CAAC,CAACjI,MAAM,CAACkI,IAAI,CAAyBxI,WAAW,CAACyI,SAAS,CAACb,MAAM,CAACc,GAAG,EAAEN,KAAK,CAAC,CAAC,CAAC;QAChG;QAEA,QAAQA,KAAK,CAACrC,IAAI;UAChB,KAAK,QAAQ;UACb,KAAK,SAAS;YACZ,OAAOqC,KAAK;UACd,KAAK,SAAS;YAAE;cACd,MAAMxF,KAAK,GAAG,OAAO2F,CAAC,CAACP,UAAU,CAACI,KAAK,CAACxF,KAAK,EAAEyF,OAAO,CAAC,CAAC;cAExD,OAAOlI,SAAS,CAACwF,SAAS,CAAC/C,KAAK,EAAE;gBAChCP,SAAS,EAAE+F,KAAK,CAAC/F,SAAS;gBAC1BM,UAAU,EAAEpC,MAAM,CAACsE,cAAc,CAACuD,KAAK,CAACzF,UAAU;eACnD,CAAC;YACJ;UACA,KAAK,SAAS;YAAE;cACd,MAAMtB,CAAC,GAAG,OAAOkH,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cAEpD,OAAOlI,SAAS,CAAC2C,OAAO,CAACzB,CAAC,EAAE;gBAC1BgB,SAAS,EAAE+F,KAAK,CAAC/F,SAAS;gBAC1BM,UAAU,EAAEpC,MAAM,CAACsE,cAAc,CAACuD,KAAK,CAACzF,UAAU;eACnD,CAAC;YACJ;UACA,KAAK,YAAY;YAAE;cACjB,MAAMU,QAAQ,GAAG,OAAOkF,CAAC,CAACJ,cAAc,CAACC,KAAK,CAAC/E,QAAQ,EAAEgF,OAAO,CAAC,CAAC;cAClE,MAAMtF,KAAK,GAAG,OAAOwF,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cAExD,OAAOlI,SAAS,CAACgD,UAAU,CAACE,QAAQ,EAAEN,KAAK,EAAE;gBAC3CV,SAAS,EAAE+F,KAAK,CAAC/F;eAClB,CAAC;YACJ;QACF;MACF,CAAC,CAAC;IACJ,CAAC;IAED,OAAO8F,cAAc;EACvB,CAAC,EACD,CAACL,WAAW,EAAEC,WAAW,KAAI;IAC3B,MAAMC,UAAU,GAAGjI,MAAM,CAAC4I,MAAM,CAACb,WAAW,CAAC;IAC7C,MAAMI,UAAU,GAAGnI,MAAM,CAAC4I,MAAM,CAACZ,WAAW,CAAC;IAE7C,MAAMI,cAAc,GAAGA,CACrBC,KAAc,EACdC,OAA0B,KAKxB;MACF,OAAO/H,MAAM,CAACgI,GAAG,CAAC,WAAUC,CAAC;QAC3B,IAAI,CAACpI,SAAS,CAACsJ,WAAW,CAAOrB,KAAK,CAAC,EAAE;UACvC,OAAO,OAAOG,CAAC,CAACjI,MAAM,CAACkI,IAAI,CAACxI,WAAW,CAACyI,SAAS,CAACb,MAAM,CAACc,GAAG,EAAEN,KAAK,CAAC,CAAC,CAAC;QACxE;QAEA,QAAQA,KAAK,CAACrC,IAAI;UAChB,KAAK,QAAQ;UACb,KAAK,SAAS;YACZ,OAAOqC,KAAK;UACd,KAAK,SAAS;YAAE;cACd,MAAMxF,KAAK,GAAG,OAAO2F,CAAC,CAACP,UAAU,CAACI,KAAK,CAACxF,KAAK,EAAEyF,OAAO,CAAC,CAAC;cAExD,OAAOlI,SAAS,CAACwF,SAAS,CAAC/C,KAAK,EAAE;gBAChCP,SAAS,EAAE+F,KAAK,CAAC/F,SAAS;gBAC1BM,UAAU,EAAEpC,MAAM,CAACsE,cAAc,CAACuD,KAAK,CAACzF,UAAU;eACnD,CAAC;YACJ;UACA,KAAK,SAAS;YAAE;cACd,MAAMtB,CAAC,GAAG,OAAOkH,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cAEpD,OAAOlI,SAAS,CAAC2C,OAAO,CAACzB,CAAC,EAAE;gBAC1BgB,SAAS,EAAE+F,KAAK,CAAC/F,SAAS;gBAC1BM,UAAU,EAAEpC,MAAM,CAACsE,cAAc,CAACuD,KAAK,CAACzF,UAAU;eACnD,CAAC;YACJ;UACA,KAAK,YAAY;YAAE;cACjB,MAAMU,QAAQ,GAAG,OAAOkF,CAAC,CAACJ,cAAc,CAACC,KAAK,CAAC/E,QAAQ,EAAEgF,OAAO,CAAC,CAAC;cAClE,MAAMtF,KAAK,GAAG,OAAOwF,CAAC,CAACL,UAAU,CAACE,KAAK,CAACrF,KAAK,EAAEsF,OAAO,CAAC,CAAC;cAExD,OAAOlI,SAAS,CAACgD,UAAU,CAACE,QAAQ,EAAEN,KAAK,EAAE;gBAC3CV,SAAS,EAAE+F,KAAK,CAAC/F;eAClB,CAAC;YACJ;QACF;MACF,CAAC,CAAC;IACJ,CAAC;IAED,OAAO8F,cAAc;EACvB,CAAC,EACD;IACEU,KAAK,EAAE,WAAW;IAClBtG,MAAM,EAAEa,eAAe;IACvB2F,SAAS,EAAEzC,kBAAkB;IAC7BwC,WAAW,EAAEA,CAAA,KAAM3D,aAAK,CAACC;GAC1B,CACF;EACD,OAAOwC,MAAM;AACf,CAAC;AAAAnD,OAAA,CAAA6E,iBAAA,GAAAA,iBAAA;AAED,SAASlG,eAAeA,CACtBsG,CAAgC,EAChCC,CAAmB;EAEnB,OAAOxJ,SAAS,CAAC+B,KAAK,CAAC;IACrB0H,MAAM,EAAEA,CAAA,KAAM7H,cAAc;IAC5B8H,OAAO,EAAE7H,cAAc;IACvB8H,OAAO,EAAEA,CAACvB,CAAC,EAAE1E,IAAI,KAAKrB,cAAc,CAACkH,CAAC,CAAC,CAAC7F,IAAI,CAAC;IAC7CkG,OAAO,EAAEA,CAACxB,CAAC,EAAE1E,IAAI,KAAKhB,cAAc,CAAC8G,CAAC,CAAC,CAAC9F,IAAI,CAAC;IAC7CmG,UAAU,EAAEA,CAACzB,CAAC,EAAE1E,IAAI,KAAKb,iBAAiB,CAAC0G,CAAC,EAAEC,CAAC,CAAC,CAAC9F,IAAI;GACtD,CAAC;AACJ;AAEA,SAASyC,kBAAkBA,CACzBoD,CAAsC,EACtCC,CAAyB;EAEzB,MAAMM,UAAU,GAAGxE,gBAAgB,CAACiE,CAAC,CAAC;EACtC,MAAMQ,UAAU,GAAGlE,gBAAgB,CAAC2D,CAAC,CAAC;EACtC,MAAMQ,aAAa,GAAGhE,mBAAmB,CAACuD,CAAC,EAAEC,CAAC,CAAC;EAE/C,OAAQ1F,EAAE,IACRA,EAAE,CAACmG,KAAK,CACNnG,EAAE,CAACoG,QAAQ,CAAClK,SAAS,CAACmK,MAAM,EAAE,CAAC,EAC/BrG,EAAE,CAACoG,QAAQ,CAAClK,SAAS,CAAC8B,OAAO,EAAE,CAAC,EAChCgI,UAAU,CAAChG,EAAE,CAAC,EACdiG,UAAU,CAACjG,EAAE,CAAC,EACdkG,aAAa,CAAClG,EAAE,CAAC,CAClB;AACL;AAEA,SAASsG,gBAAgBA,CAAC3F,IAA8B;EACtD,IAAIA,IAAI,KAAKY,SAAS,EAAE,OAAOjF,MAAM,CAACiK,IAAI,EAAE;EAC5C,OAAOjK,MAAM,CAACkK,IAAI,CAAChK,CAAC,CAAC8D,IAAI,CAACmG,MAAM,CAAC9F,IAAI,CAACpB,MAAM,CAAC,EAAEoB,IAAI,CAAClB,KAAK,KAAK8B,SAAS,GAAGA,SAAS,GAAGkF,MAAM,CAAC9F,IAAI,CAAClB,KAAK,CAAC,CAAC,CAAC;AAC5G;AAEA,SAASiH,cAAcA,CAACC,OAAkC;EACxD,IAAIrK,MAAM,CAACsK,MAAM,CAACD,OAAO,CAAC,EAAE;EAC5B,OAAO;IACLpH,MAAM,EAAEoH,OAAO,CAAC7H,KAAK,CAACS,MAAM,CAACsH,QAAQ,EAAE;IACvCpH,KAAK,EAAEnD,MAAM,CAACsE,cAAc,CAAC+F,OAAO,CAAC7H,KAAK,CAACW,KAAK,CAAC,EAAEoH,QAAQ;GAC5D;AACH;AAEA,SAASC,eAAeA,CAACnG,IAA6B;EACpD,IAAIA,IAAI,KAAKY,SAAS,EAAE;EACxB,OAAOrF,SAAS,CAAC8B,OAAO,CAAC;IACvBI,SAAS,EAAEuC,IAAI,CAACvC,SAAS;IACzBF,QAAQ,EAAE5B,MAAM,CAACsE,cAAc,CAAC0F,gBAAgB,CAAC3F,IAAI,CAACzC,QAAQ,CAAC;GAChE,CAAC;AACJ;AAEA,SAAS6I,aAAaA,CAAC/I,OAA0B;EAC/C,MAAMmF,IAAI,GAAgB;IACxBrB,IAAI,EAAE,SAAS;IACf1D,SAAS,EAAEJ,OAAO,CAACI;GACpB;EAED,IAAI9B,MAAM,CAAC0K,MAAM,CAAChJ,OAAO,CAACE,QAAQ,CAAC,EAAE;IACnC,OAAO;MAAE,GAAGiF,IAAI;MAAEjF,QAAQ,EAAEwI,cAAc,CAAC1I,OAAO,CAACE,QAAQ;IAAC,CAAE;EAChE;EAEA,OAAOiF,IAAI;AACb;AAEA,SAASwB,gBAAgBA,CAAIxB,IAAyB;EACpD,QAAQA,IAAI,CAACrB,IAAI;IACf,KAAK,KAAK;MACR,OAAO1F,KAAK,CAAC6K,GAAG,CAAC9D,IAAI,CAAC+D,MAAM,CAAC;IAC/B,KAAK,OAAO;MACV,OAAO9K,KAAK,CAAC+K,KAAK;IACpB,KAAK,MAAM;MACT,OAAO/K,KAAK,CAACmI,IAAI,CAACpB,IAAI,CAACO,KAAK,CAAC;IAC/B,KAAK,WAAW;MACd,OAAOtH,KAAK,CAACgL,SAAS,CAACC,oBAAoB,CAAClE,IAAI,CAACmE,OAAO,CAAC,CAAC;IAC5D,KAAK,UAAU;MACb,OAAOlL,KAAK,CAACmL,QAAQ,CAAC5C,gBAAgB,CAACxB,IAAI,CAACqE,IAAI,CAAC,EAAE7C,gBAAgB,CAACxB,IAAI,CAACsE,KAAK,CAAC,CAAC;IAClF,KAAK,YAAY;MACf,OAAOrL,KAAK,CAACsL,UAAU,CAAC/C,gBAAgB,CAACxB,IAAI,CAACqE,IAAI,CAAC,EAAE7C,gBAAgB,CAACxB,IAAI,CAACsE,KAAK,CAAC,CAAC;EACtF;AACF;AAEA,SAASJ,oBAAoBA,CAACM,EAAsB;EAClD,QAAQA,EAAE,CAAC7F,IAAI;IACb,KAAK,MAAM;MACT,OAAO8F,eAAO,CAACrB,IAAI;IACrB,KAAK,SAAS;MACZ,OAAOqB,eAAO,CAACC,OAAO,CAACF,EAAE,CAACA,EAAE,EAAEA,EAAE,CAACG,eAAe,CAAC;IACnD,KAAK,WAAW;MACd,OAAOF,eAAO,CAACG,SAAS,CAACV,oBAAoB,CAACM,EAAE,CAACH,IAAI,CAAC,EAAEH,oBAAoB,CAACM,EAAE,CAACF,KAAK,CAAC,CAAC;EAC3F;AACF;AAEA,SAASO,gBAAgBA,CAAIrJ,KAAqB;EAChD,QAAQA,KAAK,CAACmD,IAAI;IAChB,KAAK,KAAK;MACR,OAAO;QAAEA,IAAI,EAAE,KAAK;QAAEoF,MAAM,EAAEvI,KAAK,CAACuI;MAAM,CAAE;IAC9C,KAAK,OAAO;MACV,OAAO;QAAEpF,IAAI,EAAE;MAAO,CAAE;IAC1B,KAAK,MAAM;MACT,OAAO;QAAEA,IAAI,EAAE,MAAM;QAAE4B,KAAK,EAAE/E,KAAK,CAAC+E;MAAK,CAAE;IAC7C,KAAK,WAAW;MACd,OAAO;QAAE5B,IAAI,EAAE,WAAW;QAAEwF,OAAO,EAAEW,oBAAoB,CAACtJ,KAAK,CAAC2I,OAAO;MAAC,CAAE;IAC5E,KAAK,UAAU;MACb,OAAO;QAAExF,IAAI,EAAE,UAAU;QAAE0F,IAAI,EAAEQ,gBAAgB,CAACrJ,KAAK,CAAC6I,IAAI,CAAC;QAAEC,KAAK,EAAEO,gBAAgB,CAACrJ,KAAK,CAAC8I,KAAK;MAAC,CAAE;IACvG,KAAK,YAAY;MACf,OAAO;QAAE3F,IAAI,EAAE,YAAY;QAAE0F,IAAI,EAAEQ,gBAAgB,CAACrJ,KAAK,CAAC6I,IAAI,CAAC;QAAEC,KAAK,EAAEO,gBAAgB,CAACrJ,KAAK,CAAC8I,KAAK;MAAC,CAAE;EAC3G;AACF;AAEA,SAASQ,oBAAoBA,CAACN,EAAmB;EAC/C,QAAQA,EAAE,CAAC7F,IAAI;IACb,KAAK,MAAM;MACT,OAAO;QAAEA,IAAI,EAAE;MAAM,CAAE;IACzB,KAAK,SAAS;MACZ,OAAO;QAAEA,IAAI,EAAE,SAAS;QAAE6F,EAAE,EAAEA,EAAE,CAACA,EAAE;QAAEG,eAAe,EAAEH,EAAE,CAACG;MAAe,CAAE;IAC5E,KAAK,WAAW;MACd,OAAO;QAAEhG,IAAI,EAAE,WAAW;QAAE0F,IAAI,EAAES,oBAAoB,CAACN,EAAE,CAACH,IAAI,CAAC;QAAEC,KAAK,EAAEQ,oBAAoB,CAACN,EAAE,CAACF,KAAK;MAAC,CAAE;EAC5G;AACF;AAEA,MAAMS,YAAY,GAAe;EAAEpG,IAAI,EAAE;AAAQ,CAAW;AAE5D,SAASiD,wBAAwBA,CAAOnF,IAA+B;EACrE,QAAQA,IAAI,CAACkC,IAAI;IACf,KAAK,QAAQ;MACX,OAAOoG,YAAY;IACrB,KAAK,SAAS;MACZ,OAAOnB,aAAa,CAACnH,IAAI,CAAC;IAC5B,KAAK,SAAS;MACZ,OAAOgC,WAAW,CAChBoG,gBAAgB,CAACpI,IAAI,CAACjB,KAAK,CAAC,EAC5BiB,IAAI,CAACxB,SAAS,EACd9B,MAAM,CAACsE,cAAc,CAACtE,MAAM,CAAC+D,GAAG,CAACT,IAAI,CAAClB,UAAU,EAAEqI,aAAa,CAAC,CAAC,CAClE;IACH,KAAK,SAAS;MACZ,OAAO/E,WAAW,CAChBpC,IAAI,CAACd,KAAK,EACVc,IAAI,CAACxB,SAAS,EACd9B,MAAM,CAACsE,cAAc,CAACtE,MAAM,CAAC+D,GAAG,CAACT,IAAI,CAAClB,UAAU,EAAEqI,aAAa,CAAC,CAAC,CAClE;IACH,KAAK,YAAY;MACf,OAAO9E,cAAc,CAACrC,IAAI,CAACd,KAAK,EAAEc,IAAI,CAACxB,SAAS,EAAE2G,wBAAwB,CAACnF,IAAI,CAACR,QAAQ,CAAC,CAAC;EAC9F;AACF;AAEA,SAAS8F,wBAAwBA,CAAOtF,IAAyB;EAC/D,QAAQA,IAAI,CAACkC,IAAI;IACf,KAAK,QAAQ;MACX,OAAO5F,SAAS,CAACmK,MAAM,EAAE;IAC3B,KAAK,SAAS;MACZ,OAAOS,eAAe,CAAClH,IAAI,CAAE;IAC/B,KAAK,SAAS;MACZ,OAAO1D,SAAS,CAACwF,SAAS,CAACiD,gBAAgB,CAAC/E,IAAI,CAACjB,KAAK,CAAC,EAAE;QACvDP,SAAS,EAAEwB,IAAI,CAACxB,SAAS;QACzBM,UAAU,EAAEoI,eAAe,CAAClH,IAAI,CAAClB,UAAU;OAC5C,CAAC;IACJ,KAAK,SAAS;MACZ,OAAOxC,SAAS,CAAC2C,OAAO,CAACe,IAAI,CAACd,KAAK,EAAE;QACnCV,SAAS,EAAEwB,IAAI,CAACxB,SAAS;QACzBM,UAAU,EAAEoI,eAAe,CAAClH,IAAI,CAAClB,UAAU;OAC5C,CAAC;IACJ,KAAK,YAAY;MACf,OAAOxC,SAAS,CAACgD,UAAU,CAACgG,wBAAwB,CAACtF,IAAI,CAACR,QAAQ,CAAC,EAAEQ,IAAI,CAACd,KAAK,EAAE;QAC/EV,SAAS,EAAEwB,IAAI,CAACxB;OACjB,CAAC;EACN;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,6BAA6B,CAAA;AAMxD,OAAO,KAAK,CAAC,MAAM,eAAe,CAAA;AA0BlC;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAA;AAsBpD;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,CAClC,KAAK,EACL;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EAChE,CAAC,CAAC,QAAQ,CAgBX,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC,CAAA;AAUD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;CAC7C,CAAA;AAiBD;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAC9C,CAAA;AA+BD;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAC9C,CAAA;AAgBD;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CACvC,CAAA;AAoBD;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AA4GnH;;GAEG;AACH,eAAO,MAAM,iBAAiB,gKA2F7B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,kLAmErB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,4KAiH7B,CAAA"}
1
+ {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,6BAA6B,CAAA;AAMxD,OAAO,KAAK,CAAC,MAAM,eAAe,CAAA;AA0BlC;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAA;AAsBpD;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,CAClC,KAAK,EACL;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EAChE,CAAC,CAAC,QAAQ,CAgBX,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACpC,CAAA;AAUD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;CAC7C,CAAA;AAiBD;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAC9C,CAAA;AA+BD;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAC9C,CAAA;AAgBD;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CACvC,CAAA;AAoBD;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AA4GnH;;GAEG;AACH,eAAO,MAAM,iBAAiB,gKAiG7B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,kLAUrB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,4KAoH7B,CAAA"}
@@ -4,6 +4,7 @@
4
4
  import * as Arbitrary from "@effect/schema/Arbitrary";
5
5
  import * as AST from "@effect/schema/AST";
6
6
  import * as Eq from "@effect/schema/Equivalence";
7
+ import * as Parser from "@effect/schema/Parser";
7
8
  import * as ParseResult from "@effect/schema/ParseResult";
8
9
  import * as Pretty from "@effect/schema/Pretty";
9
10
  import * as Schema from "@effect/schema/Schema";
@@ -157,7 +158,7 @@ function isFailureFrom(value) {
157
158
  && isCauseFrom(value.cause)
158
159
  && hasProperty(value, "timestamp")
159
160
  && typeof value.timestamp === "number"
160
- && (hasProperty(value, "refreshing") ? isLoadingFrom(value.refreshing) : true);
161
+ && (hasProperty(value, "refreshing") ? value.refreshing === undefined || isLoadingFrom(value.refreshing) : true);
161
162
  }
162
163
  function isSuccessFrom(value) {
163
164
  return hasProperty(value, "_tag")
@@ -165,7 +166,7 @@ function isSuccessFrom(value) {
165
166
  && hasProperty(value, "value")
166
167
  && hasProperty(value, "timestamp")
167
168
  && typeof value.timestamp === "number"
168
- && (hasProperty(value, "refreshing") ? isLoadingFrom(value.refreshing) : true);
169
+ && (hasProperty(value, "refreshing") ? value.refreshing === undefined || isLoadingFrom(value.refreshing) : true);
169
170
  }
170
171
  function isOptimisticFrom(value) {
171
172
  return hasProperty(value, "_tag")
@@ -187,29 +188,29 @@ function isAsyncDataFrom(value) {
187
188
  * @since 1.0.0
188
189
  */
189
190
  export const asyncDataFromJson = (error, value) => {
190
- return Schema.declare([Schema.cause(error, Schema.unknown), value], (causeSchema, valueSchema) => {
191
- const parseCause = Schema.decode(causeSchema);
192
- const parseValue = Schema.decode(valueSchema);
191
+ const schema = Schema.declare([Schema.cause(error, Schema.unknown), value], (causeSchema, valueSchema) => {
192
+ const parseCause = Parser.decode(causeSchema);
193
+ const parseValue = Parser.decode(valueSchema);
193
194
  const parseAsyncData = (input, options) => {
194
195
  return Effect.gen(function* (_) {
195
196
  if (!isAsyncDataFrom(input)) {
196
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
197
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
197
198
  }
198
199
  switch (input._tag) {
199
200
  case "NoData":
200
201
  case "Loading":
201
202
  return input;
202
203
  case "Failure": {
203
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue);
204
+ const cause = yield* _(parseCause(input.cause, options));
204
205
  return FailureFrom(cause, input.timestamp, input.refreshing);
205
206
  }
206
207
  case "Success": {
207
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
208
+ const a = yield* _(parseValue(input.value, options));
208
209
  return SuccessFrom(a, input.timestamp, input.refreshing);
209
210
  }
210
211
  case "Optimistic": {
211
212
  const previous = yield* _(parseAsyncData(input.previous, options));
212
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
213
+ const value = yield* _(parseValue(input.value, options));
213
214
  return OptimisticFrom(value, input.timestamp, previous);
214
215
  }
215
216
  }
@@ -217,28 +218,28 @@ export const asyncDataFromJson = (error, value) => {
217
218
  };
218
219
  return parseAsyncData;
219
220
  }, (causeSchema, valueSchema) => {
220
- const parseCause = Schema.encode(causeSchema);
221
- const parseValue = Schema.encode(valueSchema);
221
+ const parseCause = Parser.encode(causeSchema);
222
+ const parseValue = Parser.encode(valueSchema);
222
223
  const parseAsyncData = (input, options) => {
223
224
  return Effect.gen(function* (_) {
224
225
  if (!isAsyncDataFrom(input)) {
225
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
226
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
226
227
  }
227
228
  switch (input._tag) {
228
229
  case "NoData":
229
230
  case "Loading":
230
231
  return input;
231
232
  case "Failure": {
232
- const cause = yield* _(parseCause(causeFromToCause(input.cause), options), parseErrorToParseIssue);
233
+ const cause = yield* _(parseCause(causeFromToCause(input.cause), options));
233
234
  return FailureFrom(cause, input.timestamp, input.refreshing);
234
235
  }
235
236
  case "Success": {
236
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
237
+ const a = yield* _(parseValue(input.value, options));
237
238
  return SuccessFrom(a, input.timestamp, input.refreshing);
238
239
  }
239
240
  case "Optimistic": {
240
241
  const previous = yield* _(parseAsyncData(input.previous, options));
241
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
242
+ const value = yield* _(parseValue(input.value, options));
242
243
  return OptimisticFrom(value, input.timestamp, previous);
243
244
  }
244
245
  }
@@ -247,78 +248,44 @@ export const asyncDataFromJson = (error, value) => {
247
248
  return parseAsyncData;
248
249
  }, {
249
250
  title: "AsyncDataFrom",
250
- equivalence: () => fromEq
251
+ equivalence: () => fromEq,
252
+ arbitrary: (causeArb, valueArb) => (fc) => asyncDataArbitrary(causeArb, valueArb)(fc).map(asyncDataToAsyncDataFrom),
253
+ pretty: (causePretty, valuePretty) => (from) => asyncDataPretty(causePretty, valuePretty)(asyncDataFromToAsyncData(from))
251
254
  });
255
+ return schema;
252
256
  };
253
257
  /**
254
258
  * @since 1.0.0
255
259
  */
256
260
  export const asyncData = (errorSchema, valueSchema) => {
257
- const encodeCause = Schema.encode(Schema.cause(Schema.to(errorSchema)));
258
261
  return asyncDataFromJson(errorSchema, valueSchema)
259
- .pipe(Schema.transformOrFail(asyncDataFromSelf(Schema.to(errorSchema), Schema.to(valueSchema)), function decodeAsyncDataFrom(c, options) {
260
- switch (c._tag) {
261
- case "NoData":
262
- return Effect.succeed(AsyncData.noData());
263
- case "Loading":
264
- return Effect.succeed(loadingFromJson(c));
265
- case "Failure": {
266
- return Effect.succeed(AsyncData.failCause(causeFromToCause(c.cause), {
267
- timestamp: c.timestamp,
268
- refreshing: loadingFromJson(c.refreshing)
269
- }));
270
- }
271
- case "Success": {
272
- return Effect.succeed(AsyncData.success(c.value, {
273
- timestamp: c.timestamp,
274
- refreshing: loadingFromJson(c.refreshing)
275
- }));
276
- }
277
- case "Optimistic": {
278
- return Effect.map(decodeAsyncDataFrom(c.previous, options), (previous) => AsyncData.optimistic(previous, c.value, { timestamp: c.timestamp }));
279
- }
280
- }
281
- }, function encodeAsyncDataFrom(a, options) {
282
- switch (a._tag) {
283
- case "NoData":
284
- return Effect.succeed({ _tag: "NoData" });
285
- case "Loading":
286
- return Effect.succeed(loadingToJson(a));
287
- case "Failure":
288
- return Effect.map(parseErrorToParseIssue(encodeCause(a.cause, options)), (cause) => FailureFrom(cause, a.timestamp, Option.getOrUndefined(Option.map(a.refreshing, loadingToJson))));
289
- case "Success":
290
- return Effect.succeed(SuccessFrom(a.value, a.timestamp, Option.getOrUndefined(Option.map(a.refreshing, loadingToJson))));
291
- case "Optimistic": {
292
- return Effect.map(encodeAsyncDataFrom(a.previous, options), (previous) => OptimisticFrom(a.value, a.timestamp, previous));
293
- }
294
- }
295
- }));
262
+ .pipe(Schema.transform(asyncDataFromSelf(Schema.to(errorSchema), Schema.to(valueSchema)), asyncDataFromToAsyncData, asyncDataToAsyncDataFrom));
296
263
  };
297
264
  /**
298
265
  * @since 1.0.0
299
266
  */
300
267
  export const asyncDataFromSelf = (error, value) => {
301
- return Schema.declare([Schema.causeFromSelf(error), value], (causeSchema, valueSchema) => {
302
- const parseCause = Schema.decode(causeSchema);
303
- const parseValue = Schema.decode(valueSchema);
268
+ const schema = Schema.declare([Schema.causeFromSelf(error), value], (causeSchema, valueSchema) => {
269
+ const parseCause = Parser.decode(causeSchema);
270
+ const parseValue = Parser.decode(valueSchema);
304
271
  const parseAsyncData = (input, options) => {
305
272
  return Effect.gen(function* (_) {
306
273
  if (!AsyncData.isAsyncData(input)) {
307
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
274
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
308
275
  }
309
276
  switch (input._tag) {
310
277
  case "NoData":
311
278
  case "Loading":
312
279
  return input;
313
280
  case "Failure": {
314
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue);
281
+ const cause = yield* _(parseCause(input.cause, options));
315
282
  return AsyncData.failCause(cause, {
316
283
  timestamp: input.timestamp,
317
284
  refreshing: Option.getOrUndefined(input.refreshing)
318
285
  });
319
286
  }
320
287
  case "Success": {
321
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
288
+ const a = yield* _(parseValue(input.value, options));
322
289
  return AsyncData.success(a, {
323
290
  timestamp: input.timestamp,
324
291
  refreshing: Option.getOrUndefined(input.refreshing)
@@ -326,7 +293,7 @@ export const asyncDataFromSelf = (error, value) => {
326
293
  }
327
294
  case "Optimistic": {
328
295
  const previous = yield* _(parseAsyncData(input.previous, options));
329
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
296
+ const value = yield* _(parseValue(input.value, options));
330
297
  return AsyncData.optimistic(previous, value, {
331
298
  timestamp: input.timestamp
332
299
  });
@@ -336,25 +303,26 @@ export const asyncDataFromSelf = (error, value) => {
336
303
  };
337
304
  return parseAsyncData;
338
305
  }, (causeSchema, valueSchema) => {
339
- const parseCause = Schema.encode(causeSchema);
340
- const parseValue = Schema.encode(valueSchema);
306
+ const parseCause = Parser.encode(causeSchema);
307
+ const parseValue = Parser.encode(valueSchema);
341
308
  const parseAsyncData = (input, options) => {
342
309
  return Effect.gen(function* (_) {
343
- if (!AsyncData.isAsyncData(input))
344
- return yield* _(Effect.fail(ParseResult.forbidden(input)));
310
+ if (!AsyncData.isAsyncData(input)) {
311
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)));
312
+ }
345
313
  switch (input._tag) {
346
314
  case "NoData":
347
315
  case "Loading":
348
316
  return input;
349
317
  case "Failure": {
350
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue);
318
+ const cause = yield* _(parseCause(input.cause, options));
351
319
  return AsyncData.failCause(cause, {
352
320
  timestamp: input.timestamp,
353
321
  refreshing: Option.getOrUndefined(input.refreshing)
354
322
  });
355
323
  }
356
324
  case "Success": {
357
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
325
+ const a = yield* _(parseValue(input.value, options));
358
326
  return AsyncData.success(a, {
359
327
  timestamp: input.timestamp,
360
328
  refreshing: Option.getOrUndefined(input.refreshing)
@@ -362,7 +330,7 @@ export const asyncDataFromSelf = (error, value) => {
362
330
  }
363
331
  case "Optimistic": {
364
332
  const previous = yield* _(parseAsyncData(input.previous, options));
365
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue);
333
+ const value = yield* _(parseValue(input.value, options));
366
334
  return AsyncData.optimistic(previous, value, {
367
335
  timestamp: input.timestamp
368
336
  });
@@ -377,6 +345,7 @@ export const asyncDataFromSelf = (error, value) => {
377
345
  arbitrary: asyncDataArbitrary,
378
346
  equivalence: () => Equal.equals
379
347
  });
348
+ return schema;
380
349
  };
381
350
  function asyncDataPretty(E, A) {
382
351
  return AsyncData.match({
@@ -450,7 +419,67 @@ function fiberIdFromToFiberId(id) {
450
419
  return FiberId.composite(fiberIdFromToFiberId(id.left), fiberIdFromToFiberId(id.right));
451
420
  }
452
421
  }
453
- function parseErrorToParseIssue(effect) {
454
- return Effect.catchTag(effect, "ParseError", (error) => Effect.fail(error.error));
422
+ function causeToCauseFrom(cause) {
423
+ switch (cause._tag) {
424
+ case "Die":
425
+ return { _tag: "Die", defect: cause.defect };
426
+ case "Empty":
427
+ return { _tag: "Empty" };
428
+ case "Fail":
429
+ return { _tag: "Fail", error: cause.error };
430
+ case "Interrupt":
431
+ return { _tag: "Interrupt", fiberId: fiberIdToFiberIdFrom(cause.fiberId) };
432
+ case "Parallel":
433
+ return { _tag: "Parallel", left: causeToCauseFrom(cause.left), right: causeToCauseFrom(cause.right) };
434
+ case "Sequential":
435
+ return { _tag: "Sequential", left: causeToCauseFrom(cause.left), right: causeToCauseFrom(cause.right) };
436
+ }
437
+ }
438
+ function fiberIdToFiberIdFrom(id) {
439
+ switch (id._tag) {
440
+ case "None":
441
+ return { _tag: "None" };
442
+ case "Runtime":
443
+ return { _tag: "Runtime", id: id.id, startTimeMillis: id.startTimeMillis };
444
+ case "Composite":
445
+ return { _tag: "Composite", left: fiberIdToFiberIdFrom(id.left), right: fiberIdToFiberIdFrom(id.right) };
446
+ }
447
+ }
448
+ const NO_DATA_FROM = { _tag: "NoData" };
449
+ function asyncDataToAsyncDataFrom(data) {
450
+ switch (data._tag) {
451
+ case "NoData":
452
+ return NO_DATA_FROM;
453
+ case "Loading":
454
+ return loadingToJson(data);
455
+ case "Failure":
456
+ return FailureFrom(causeToCauseFrom(data.cause), data.timestamp, Option.getOrUndefined(Option.map(data.refreshing, loadingToJson)));
457
+ case "Success":
458
+ return SuccessFrom(data.value, data.timestamp, Option.getOrUndefined(Option.map(data.refreshing, loadingToJson)));
459
+ case "Optimistic":
460
+ return OptimisticFrom(data.value, data.timestamp, asyncDataToAsyncDataFrom(data.previous));
461
+ }
462
+ }
463
+ function asyncDataFromToAsyncData(data) {
464
+ switch (data._tag) {
465
+ case "NoData":
466
+ return AsyncData.noData();
467
+ case "Loading":
468
+ return loadingFromJson(data);
469
+ case "Failure":
470
+ return AsyncData.failCause(causeFromToCause(data.cause), {
471
+ timestamp: data.timestamp,
472
+ refreshing: loadingFromJson(data.refreshing)
473
+ });
474
+ case "Success":
475
+ return AsyncData.success(data.value, {
476
+ timestamp: data.timestamp,
477
+ refreshing: loadingFromJson(data.refreshing)
478
+ });
479
+ case "Optimistic":
480
+ return AsyncData.optimistic(asyncDataFromToAsyncData(data.previous), data.value, {
481
+ timestamp: data.timestamp
482
+ });
483
+ }
455
484
  }
456
485
  //# sourceMappingURL=Schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Schema.js","sourceRoot":"","sources":["../../src/Schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAA;AACrD,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAChD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,WAAW,MAAM,4BAA4B,CAAA;AACzD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,CAAC,MAAM,eAAe,CAAA;AAElC,MAAM,cAAc,GAAG,kBAAkB,CAAA;AACzC,MAAM,cAAc,GAAG,CAAC,OAA0B,EAAE,EAAE,CACpD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,+BAA+B,OAAO,CAAC,SAAS,GAAG;IACjE,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,+BAA+B,OAAO,CAAC,SAAS,cAAc,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG;CAC1G,CAAC,CAAA;AACJ,MAAM,cAAc,GAAG,CAAI,KAAoC,EAAE,EAAE,CAAC,CAAC,OAA6B,EAAE,EAAE,CACpG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE;IAC/B,MAAM,EAAE,GAAG,EAAE,CAAC,+BAA+B,OAAO,CAAC,SAAS,WAAW,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG;IAChG,MAAM,EAAE,GAAG,EAAE,CAAC,+BAA+B,OAAO,CAAC,SAAS,4BAA4B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG;CAClH,CAAC,CAAA;AACJ,MAAM,cAAc,GAAG,CAAI,KAAuB,EAAE,EAAE,CAAC,CAAC,OAA6B,EAAE,EAAE,CACvF,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE;IAC/B,MAAM,EAAE,GAAG,EAAE,CAAC,+BAA+B,OAAO,CAAC,SAAS,WAAW,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG;IAChG,MAAM,EAAE,GAAG,EAAE,CAAC,+BAA+B,OAAO,CAAC,SAAS,4BAA4B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG;CAClH,CAAC,CAAA;AAEJ,MAAM,iBAAiB,GACrB,CAAO,UAAyC,EAAE,UAA4B,EAAE,EAAE,CAClF,CAAC,UAAsC,EAAE,EAAE,CACzC,kCAAkC,UAAU,CAAC,SAAS,WAAW,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,cAC3F,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,UAAU,CAAC,QAAQ,CAC7D,GAAG,CAAA;AAOP,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;CACtC,CAAC,CAAA;AAEF,MAAM,cAAc,GAOhB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC;CACpD,CAAC,CAAC,CAAA;AAEH,MAAM,iBAAiB,GAAoC,CAAC,EAAE,EAAE,EAAE,CAChE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;AAE5G;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAIjB,kBAAkB,CAAC,IAAI,CACzB,MAAM,CAAC,SAAS,CACd,cAAc,EACd,CAAC,IAAI,EAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EACrD,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACb,MAAM,EAAE,QAAQ,CAAC,MAAM;IACvB,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;CAC7C,CAAC,CACH,EACD,MAAM,CAAC,WAAW,CAAC;IACjB,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,UAAU;IACxC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU;IACvC,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,GAAoC,EAAE,CAAC,iBAAiB;IACrF,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM;CAC3C,CAAC,CACH,CAAA;AAUD,MAAM,gBAAgB,GAA2C,CAAC,EAAE,EAAE,EAAE,CACtE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAChD,SAAS,CAAC,OAAO,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;IACrB,QAAQ,EAAE,QAAQ,IAAI,SAAS;CAChC,CAAC,CACH,CAAA;AAWH,MAAM,gBAAgB,GAAG,CACvB,KAA0C,EACC,EAAE,CAC/C,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CACnD,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACrB,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE;IACzB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;IACzB,UAAU,EAAE,UAAU,IAAI,SAAS;CACpC,CAAC,CACH,CACF,CACF,CAAA;AAYH,MAAM,WAAW,GAAG,CAAI,KAA0B,EAAE,SAAiB,EAAE,UAAwB,EAAkB,EAAE;IACjH,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,SAAS;QACf,KAAK;QACL,SAAS;KACD,CAAA;IAEV,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,CAAA;IAChC,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CACvB,KAA6B,EACc,EAAE,CAC/C,CAAC,EAAE,EAAE,EAAE,CACL,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CACnD,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACrB,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;IACnB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE;IACzB,UAAU,EAAE,UAAU,IAAI,SAAS;CACpC,CAAC,CACH,CACF,CACF,CAAA;AAYH,MAAM,WAAW,GAAG,CAAI,KAAQ,EAAE,SAAiB,EAAE,UAAwB,EAAkB,EAAE;IAC/F,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,SAAS;QACf,KAAK;QACL,SAAS;KACD,CAAA;IAEV,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,CAAA;IAChC,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAYD,MAAM,cAAc,GAAG,CAAO,KAAQ,EAAE,SAAiB,EAAE,QAA6B,EAAwB,EAAE,CAAC,CAAC;IAClH,IAAI,EAAE,YAAY;IAClB,KAAK;IACL,SAAS;IACT,QAAQ;CACT,CAAC,CAAA;AAEF,MAAM,mBAAmB,GAAG,CAC1B,QAA6C,EAC7C,QAAgC,EACiB,EAAE,CACrD,CAAC,EAAE,EAAE,EAAE,CACL,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC5D,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3B,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAC9F,CACF,CAAA;AAOH,MAAM,MAAM,GAAG,CAAC,CAA0B,EAAE,CAA0B,EAAW,EAAE;IACjF,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAEnC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,IAAI,CAAA;QACb,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,QAAQ,GAAG,CAAgB,CAAA;YAEjC,IAAI,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;gBAAE,OAAO,KAAK,CAAA;YAEpD,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAA;YAC5E,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAE7E,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC9E,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,QAAQ,GAAG,CAAqB,CAAA;YAEtC,IACE,CAAC,CACC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CACtG;gBACD,OAAO,KAAK,CAAA;YAEd,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAA;YAChF,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAEjF,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;QAClF,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,QAAQ,GAAG,CAAqB,CAAA;YACtC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;gBAC1C,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;gBAClC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;QACnD,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,WAAW,GAAG,CAA6B,CAAA;YACjD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;gBAC7C,CAAC,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS;gBACrC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAA;AAC9D,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAA;IAErF,IAAI,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;QAChC,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAA;IACnD,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;WAC5B,KAAK,CAAC,IAAI,KAAK,SAAS;WACxB,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC;WAC/B,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;WACnC,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAExE,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;WAC5B,KAAK,CAAC,IAAI,KAAK,SAAS;WACxB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;WAC3B,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;WACxB,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC;WAC/B,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;WACnC,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AACpH,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;WAC5B,KAAK,CAAC,IAAI,KAAK,SAAS;WACxB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;WAC3B,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC;WAC/B,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;WACnC,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AACpH,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;WAC5B,KAAK,CAAC,IAAI,KAAK,YAAY;WAC3B,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;WAC3B,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC;WAC9B,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;WAC/B,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC;WAC/B,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAA;AAC1C,CAAC;AAED,SAAS,eAAe,CAA2B,KAAc;IAC/D,OAAO,YAAY,CAAC,KAAK,CAAC;WACrB,aAAa,CAAC,KAAK,CAAC;WACpB,aAAa,CAAC,KAAK,CAAC;WACpB,aAAa,CAAC,KAAK,CAAC;WACpB,gBAAgB,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAA+B,EAC/B,KAA+B,EACqC,EAAE;IACtE,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAC3B,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAC5C,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAE7C,MAAM,cAAc,GAAG,CACrB,KAAc,EACd,OAAsC,EAKtC,EAAE;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAC,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAS,KAAK,CAAC,EAAE,CAAC;oBACpC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAyB,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;gBAChG,CAAC;gBAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,QAAQ,CAAC;oBACd,KAAK,SAAS;wBACZ,OAAO,KAAK,CAAA;oBACd,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBACxD,OAAO,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;oBAC9D,CAAC;oBACD,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBACpD,OAAO,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;oBAC1D,CAAC;oBACD,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;wBAClE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBACxD,OAAO,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;oBACzD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,cAAc,CAAA;IACvB,CAAC,EACD,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAE7C,MAAM,cAAc,GAAG,CACrB,KAAc,EACd,OAA0B,EAK1B,EAAE;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAC,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAO,KAAK,CAAC,EAAE,CAAC;oBAClC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAyB,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;gBAChG,CAAC;gBAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,QAAQ,CAAC;oBACd,KAAK,SAAS;wBACZ,OAAO,KAAK,CAAA;oBACd,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;wBAC1E,OAAO,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;oBAC9D,CAAC;oBACD,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBACpD,OAAO,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;oBAC1D,CAAC;oBACD,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;wBAClE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBACxD,OAAO,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;oBACzD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,cAAc,CAAA;IACvB,CAAC,EACD;QACE,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM;QACzB,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CACxC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC1E,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7C,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;KAC5E,CACF,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,WAAqC,EACrC,WAAqC,EACqC,EAAE;IAC5E,OAAO,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC;SAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,CACpB,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,EACjE,wBAAwB,EACxB,wBAAwB,CACzB,CAAC,CAAA;AACN,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAA+B,EAC/B,KAA+B,EACiD,EAAE;IAClF,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAC3B,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EACpC,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAE7C,MAAM,cAAc,GAAG,CACrB,KAAc,EACd,OAA0B,EAK1B,EAAE;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAC,CAAC;gBAC3B,IAAI,CAAC,SAAS,CAAC,WAAW,CAAS,KAAK,CAAC,EAAE,CAAC;oBAC1C,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAyB,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;gBAChG,CAAC;gBAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,QAAQ,CAAC;oBACd,KAAK,SAAS;wBACZ,OAAO,KAAK,CAAA;oBACd,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBAExD,OAAO,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE;4BAChC,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;yBACpD,CAAC,CAAA;oBACJ,CAAC;oBACD,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBAEpD,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;4BAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;yBACpD,CAAC,CAAA;oBACJ,CAAC;oBACD,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;wBAClE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBAExD,OAAO,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE;4BAC3C,SAAS,EAAE,KAAK,CAAC,SAAS;yBAC3B,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,cAAc,CAAA;IACvB,CAAC,EACD,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAE7C,MAAM,cAAc,GAAG,CACrB,KAAc,EACd,OAA0B,EAK1B,EAAE;YACF,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAC,CAAC;gBAC3B,IAAI,CAAC,SAAS,CAAC,WAAW,CAAO,KAAK,CAAC,EAAE,CAAC;oBACxC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;gBACxE,CAAC;gBAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,QAAQ,CAAC;oBACd,KAAK,SAAS;wBACZ,OAAO,KAAK,CAAA;oBACd,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBAExD,OAAO,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE;4BAChC,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;yBACpD,CAAC,CAAA;oBACJ,CAAC;oBACD,KAAK,SAAS,CAAC,CAAC,CAAC;wBACf,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBAEpD,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE;4BAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;4BAC1B,UAAU,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;yBACpD,CAAC,CAAA;oBACJ,CAAC;oBACD,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;wBAClE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;wBAExD,OAAO,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE;4BAC3C,SAAS,EAAE,KAAK,CAAC,SAAS;yBAC3B,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QAED,OAAO,cAAc,CAAA;IACvB,CAAC,EACD;QACE,KAAK,EAAE,WAAW;QAClB,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,kBAAkB;QAC7B,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM;KAChC,CACF,CAAA;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,SAAS,eAAe,CACtB,CAAgC,EAChC,CAAmB;IAEnB,OAAO,SAAS,CAAC,KAAK,CAAC;QACrB,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc;QAC5B,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7C,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7C,UAAU,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;KACvD,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,CAAsC,EACtC,CAAyB;IAEzB,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IACtC,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;IACtC,MAAM,aAAa,GAAG,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAE/C,OAAO,CAAC,EAAE,EAAE,EAAE,CACZ,EAAE,CAAC,KAAK,CACN,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAC/B,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAChC,UAAU,CAAC,EAAE,CAAC,EACd,UAAU,CAAC,EAAE,CAAC,EACd,aAAa,CAAC,EAAE,CAAC,CAClB,CAAA;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA8B;IACtD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAA;IAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC5G,CAAC;AAED,SAAS,cAAc,CAAC,OAAkC;IACxD,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,OAAM;IAClC,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;QACvC,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE;KAC9D,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAA6B;IACpD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAM;IAC9B,OAAO,SAAS,CAAC,OAAO,CAAC;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACjE,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,OAA0B;IAC/C,MAAM,IAAI,GAAgB;QACxB,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAA;IAChE,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,gBAAgB,CAAI,IAAyB;IACpD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC/B,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,KAAK,CAAA;QACpB,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/B,KAAK,WAAW;YACd,OAAO,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;QAC5D,KAAK,UAAU;YACb,OAAO,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;QAClF,KAAK,YAAY;YACf,OAAO,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACtF,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAsB;IAClD,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,OAAO,CAAC,IAAI,CAAA;QACrB,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,CAAA;QACnD,KAAK,WAAW;YACd,OAAO,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAC3F,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAI,KAAqB;IAChD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,KAAK;YACR,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;QAC9C,KAAK,OAAO;YACV,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC1B,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAA;QAC7C,KAAK,WAAW;YACd,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;QAC5E,KAAK,UAAU;YACb,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAA;QACvG,KAAK,YAAY;YACf,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAA;IAC3G,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAmB;IAC/C,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;QACzB,KAAK,SAAS;YACZ,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,eAAe,EAAE,EAAE,CAAC,eAAe,EAAE,CAAA;QAC5E,KAAK,WAAW;YACd,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAA;IAC5G,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAe,EAAE,IAAI,EAAE,QAAQ,EAAW,CAAA;AAE5D,SAAS,wBAAwB,CAAO,IAA+B;IACrE,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,YAAY,CAAA;QACrB,KAAK,SAAS;YACZ,OAAO,aAAa,CAAC,IAAI,CAAC,CAAA;QAC5B,KAAK,SAAS;YACZ,OAAO,WAAW,CAChB,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAC5B,IAAI,CAAC,SAAS,EACd,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAClE,CAAA;QACH,KAAK,SAAS;YACZ,OAAO,WAAW,CAChB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,SAAS,EACd,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAClE,CAAA;QACH,KAAK,YAAY;YACf,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC9F,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAO,IAAyB;IAC/D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,SAAS,CAAC,MAAM,EAAE,CAAA;QAC3B,KAAK,SAAS;YACZ,OAAO,eAAe,CAAC,IAAI,CAAE,CAAA;QAC/B,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACvD,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;aAC7C,CAAC,CAAA;QACJ,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;gBACnC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;aAC7C,CAAC,CAAA;QACJ,KAAK,YAAY;YACf,OAAO,SAAS,CAAC,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE;gBAC/E,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC,CAAA;IACN,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typed/async-data",
3
- "version": "0.5.0",
3
+ "version": "0.5.2",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -10,9 +10,9 @@
10
10
  "sideEffects": [],
11
11
  "author": "Typed contributors",
12
12
  "dependencies": {
13
- "@effect/schema": "0.61.0",
14
- "effect": "^2.2.1",
15
- "fast-check": "^3.15.0"
13
+ "@effect/schema": "0.61.5",
14
+ "effect": "^2.2.3",
15
+ "fast-check": "^3.15.1"
16
16
  },
17
17
  "exports": {
18
18
  "./package.json": "./package.json",
package/src/Schema.ts CHANGED
@@ -5,6 +5,7 @@
5
5
  import * as Arbitrary from "@effect/schema/Arbitrary"
6
6
  import * as AST from "@effect/schema/AST"
7
7
  import * as Eq from "@effect/schema/Equivalence"
8
+ import * as Parser from "@effect/schema/Parser"
8
9
  import * as ParseResult from "@effect/schema/ParseResult"
9
10
  import * as Pretty from "@effect/schema/Pretty"
10
11
  import * as Schema from "@effect/schema/Schema"
@@ -301,7 +302,7 @@ function isFailureFrom(value: unknown): value is FailureFrom<any> {
301
302
  && isCauseFrom(value.cause)
302
303
  && hasProperty(value, "timestamp")
303
304
  && typeof value.timestamp === "number"
304
- && (hasProperty(value, "refreshing") ? isLoadingFrom(value.refreshing) : true)
305
+ && (hasProperty(value, "refreshing") ? value.refreshing === undefined || isLoadingFrom(value.refreshing) : true)
305
306
  }
306
307
 
307
308
  function isSuccessFrom(value: unknown): value is SuccessFrom<any> {
@@ -310,7 +311,7 @@ function isSuccessFrom(value: unknown): value is SuccessFrom<any> {
310
311
  && hasProperty(value, "value")
311
312
  && hasProperty(value, "timestamp")
312
313
  && typeof value.timestamp === "number"
313
- && (hasProperty(value, "refreshing") ? isLoadingFrom(value.refreshing) : true)
314
+ && (hasProperty(value, "refreshing") ? value.refreshing === undefined || isLoadingFrom(value.refreshing) : true)
314
315
  }
315
316
 
316
317
  function isOptimisticFrom(value: unknown): value is OptimisticFrom<any, any> {
@@ -338,11 +339,11 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
338
339
  error: Schema.Schema<R1, EI, E>,
339
340
  value: Schema.Schema<R2, AI, A>
340
341
  ): Schema.Schema<R1 | R2, AsyncDataFrom<EI, AI>, AsyncDataFrom<E, A>> => {
341
- return Schema.declare(
342
+ const schema = Schema.declare(
342
343
  [Schema.cause(error, Schema.unknown), value],
343
344
  (causeSchema, valueSchema) => {
344
- const parseCause = Schema.decode(causeSchema)
345
- const parseValue = Schema.decode(valueSchema)
345
+ const parseCause = Parser.decode(causeSchema)
346
+ const parseValue = Parser.decode(valueSchema)
346
347
 
347
348
  const parseAsyncData = (
348
349
  input: unknown,
@@ -354,7 +355,7 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
354
355
  > => {
355
356
  return Effect.gen(function*(_) {
356
357
  if (!isAsyncDataFrom<EI, AI>(input)) {
357
- return yield* _(Effect.fail<ParseResult.ParseIssue>(ParseResult.forbidden(input)))
358
+ return yield* _(Effect.fail<ParseResult.ParseIssue>(ParseResult.forbidden(schema.ast, input)))
358
359
  }
359
360
 
360
361
  switch (input._tag) {
@@ -362,16 +363,16 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
362
363
  case "Loading":
363
364
  return input
364
365
  case "Failure": {
365
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue)
366
+ const cause = yield* _(parseCause(input.cause, options))
366
367
  return FailureFrom(cause, input.timestamp, input.refreshing)
367
368
  }
368
369
  case "Success": {
369
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
370
+ const a = yield* _(parseValue(input.value, options))
370
371
  return SuccessFrom(a, input.timestamp, input.refreshing)
371
372
  }
372
373
  case "Optimistic": {
373
374
  const previous = yield* _(parseAsyncData(input.previous, options))
374
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
375
+ const value = yield* _(parseValue(input.value, options))
375
376
  return OptimisticFrom(value, input.timestamp, previous)
376
377
  }
377
378
  }
@@ -381,8 +382,8 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
381
382
  return parseAsyncData
382
383
  },
383
384
  (causeSchema, valueSchema) => {
384
- const parseCause = Schema.encode(causeSchema)
385
- const parseValue = Schema.encode(valueSchema)
385
+ const parseCause = Parser.encode(causeSchema)
386
+ const parseValue = Parser.encode(valueSchema)
386
387
 
387
388
  const parseAsyncData = (
388
389
  input: unknown,
@@ -394,7 +395,7 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
394
395
  > => {
395
396
  return Effect.gen(function*(_) {
396
397
  if (!isAsyncDataFrom<E, A>(input)) {
397
- return yield* _(Effect.fail<ParseResult.ParseIssue>(ParseResult.forbidden(input)))
398
+ return yield* _(Effect.fail<ParseResult.ParseIssue>(ParseResult.forbidden(schema.ast, input)))
398
399
  }
399
400
 
400
401
  switch (input._tag) {
@@ -402,16 +403,16 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
402
403
  case "Loading":
403
404
  return input
404
405
  case "Failure": {
405
- const cause = yield* _(parseCause(causeFromToCause(input.cause), options), parseErrorToParseIssue)
406
+ const cause = yield* _(parseCause(causeFromToCause(input.cause), options))
406
407
  return FailureFrom(cause, input.timestamp, input.refreshing)
407
408
  }
408
409
  case "Success": {
409
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
410
+ const a = yield* _(parseValue(input.value, options))
410
411
  return SuccessFrom(a, input.timestamp, input.refreshing)
411
412
  }
412
413
  case "Optimistic": {
413
414
  const previous = yield* _(parseAsyncData(input.previous, options))
414
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
415
+ const value = yield* _(parseValue(input.value, options))
415
416
  return OptimisticFrom(value, input.timestamp, previous)
416
417
  }
417
418
  }
@@ -422,9 +423,15 @@ export const asyncDataFromJson = <R1, EI, E, R2, AI, A>(
422
423
  },
423
424
  {
424
425
  title: "AsyncDataFrom",
425
- equivalence: () => fromEq
426
+ equivalence: () => fromEq,
427
+ arbitrary: (causeArb, valueArb) => (fc) =>
428
+ asyncDataArbitrary(causeArb, valueArb)(fc).map(asyncDataToAsyncDataFrom),
429
+ pretty: (causePretty, valuePretty) => (from) =>
430
+ asyncDataPretty(causePretty, valuePretty)(asyncDataFromToAsyncData(from))
426
431
  }
427
432
  )
433
+
434
+ return schema
428
435
  }
429
436
 
430
437
  /**
@@ -434,68 +441,11 @@ export const asyncData = <R1, EI, E, R2, AI, A>(
434
441
  errorSchema: Schema.Schema<R1, EI, E>,
435
442
  valueSchema: Schema.Schema<R2, AI, A>
436
443
  ): Schema.Schema<R1 | R2, AsyncDataFrom<EI, AI>, AsyncData.AsyncData<E, A>> => {
437
- const encodeCause = Schema.encode(Schema.cause(Schema.to(errorSchema)))
438
-
439
444
  return asyncDataFromJson(errorSchema, valueSchema)
440
- .pipe(Schema.transformOrFail(
445
+ .pipe(Schema.transform(
441
446
  asyncDataFromSelf(Schema.to(errorSchema), Schema.to(valueSchema)),
442
- function decodeAsyncDataFrom(
443
- c: AsyncDataFrom<E, A>,
444
- options?: AST.ParseOptions
445
- ): Effect.Effect<never, ParseResult.ParseIssue, AsyncData.AsyncData<E, A>> {
446
- switch (c._tag) {
447
- case "NoData":
448
- return Effect.succeed(AsyncData.noData())
449
- case "Loading":
450
- return Effect.succeed(loadingFromJson(c)!)
451
- case "Failure": {
452
- return Effect.succeed(
453
- AsyncData.failCause(causeFromToCause(c.cause), {
454
- timestamp: c.timestamp,
455
- refreshing: loadingFromJson(c.refreshing)
456
- })
457
- )
458
- }
459
- case "Success": {
460
- return Effect.succeed(AsyncData.success(c.value, {
461
- timestamp: c.timestamp,
462
- refreshing: loadingFromJson(c.refreshing)
463
- }))
464
- }
465
- case "Optimistic": {
466
- return Effect.map(
467
- decodeAsyncDataFrom(c.previous, options),
468
- (previous) => AsyncData.optimistic(previous, c.value, { timestamp: c.timestamp })
469
- )
470
- }
471
- }
472
- },
473
- function encodeAsyncDataFrom(
474
- a: AsyncData.AsyncData<E, A>,
475
- options?: AST.ParseOptions
476
- ): Effect.Effect<never, ParseResult.ParseIssue, AsyncDataFrom<E, A>> {
477
- switch (a._tag) {
478
- case "NoData":
479
- return Effect.succeed({ _tag: "NoData" })
480
- case "Loading":
481
- return Effect.succeed(loadingToJson(a))
482
- case "Failure":
483
- return Effect.map(
484
- parseErrorToParseIssue(encodeCause(a.cause, options)),
485
- (cause) => FailureFrom(cause, a.timestamp, Option.getOrUndefined(Option.map(a.refreshing, loadingToJson)))
486
- )
487
- case "Success":
488
- return Effect.succeed(
489
- SuccessFrom(a.value, a.timestamp, Option.getOrUndefined(Option.map(a.refreshing, loadingToJson)))
490
- )
491
- case "Optimistic": {
492
- return Effect.map(
493
- encodeAsyncDataFrom(a.previous, options),
494
- (previous) => OptimisticFrom(a.value, a.timestamp, previous)
495
- )
496
- }
497
- }
498
- }
447
+ asyncDataFromToAsyncData,
448
+ asyncDataToAsyncDataFrom
499
449
  ))
500
450
  }
501
451
 
@@ -506,11 +456,11 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
506
456
  error: Schema.Schema<R1, EI, E>,
507
457
  value: Schema.Schema<R2, AI, A>
508
458
  ): Schema.Schema<R1 | R2, AsyncData.AsyncData<EI, AI>, AsyncData.AsyncData<E, A>> => {
509
- return Schema.declare(
459
+ const schema = Schema.declare(
510
460
  [Schema.causeFromSelf(error), value],
511
461
  (causeSchema, valueSchema) => {
512
- const parseCause = Schema.decode(causeSchema)
513
- const parseValue = Schema.decode(valueSchema)
462
+ const parseCause = Parser.decode(causeSchema)
463
+ const parseValue = Parser.decode(valueSchema)
514
464
 
515
465
  const parseAsyncData = (
516
466
  input: unknown,
@@ -522,7 +472,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
522
472
  > => {
523
473
  return Effect.gen(function*(_) {
524
474
  if (!AsyncData.isAsyncData<EI, AI>(input)) {
525
- return yield* _(Effect.fail<ParseResult.ParseIssue>(ParseResult.forbidden(input)))
475
+ return yield* _(Effect.fail<ParseResult.ParseIssue>(ParseResult.forbidden(schema.ast, input)))
526
476
  }
527
477
 
528
478
  switch (input._tag) {
@@ -530,7 +480,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
530
480
  case "Loading":
531
481
  return input
532
482
  case "Failure": {
533
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue)
483
+ const cause = yield* _(parseCause(input.cause, options))
534
484
 
535
485
  return AsyncData.failCause(cause, {
536
486
  timestamp: input.timestamp,
@@ -538,7 +488,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
538
488
  })
539
489
  }
540
490
  case "Success": {
541
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
491
+ const a = yield* _(parseValue(input.value, options))
542
492
 
543
493
  return AsyncData.success(a, {
544
494
  timestamp: input.timestamp,
@@ -547,7 +497,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
547
497
  }
548
498
  case "Optimistic": {
549
499
  const previous = yield* _(parseAsyncData(input.previous, options))
550
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
500
+ const value = yield* _(parseValue(input.value, options))
551
501
 
552
502
  return AsyncData.optimistic(previous, value, {
553
503
  timestamp: input.timestamp
@@ -560,8 +510,8 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
560
510
  return parseAsyncData
561
511
  },
562
512
  (causeSchema, valueSchema) => {
563
- const parseCause = Schema.encode(causeSchema)
564
- const parseValue = Schema.encode(valueSchema)
513
+ const parseCause = Parser.encode(causeSchema)
514
+ const parseValue = Parser.encode(valueSchema)
565
515
 
566
516
  const parseAsyncData = (
567
517
  input: unknown,
@@ -572,14 +522,16 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
572
522
  AsyncData.AsyncData<EI, AI>
573
523
  > => {
574
524
  return Effect.gen(function*(_) {
575
- if (!AsyncData.isAsyncData<E, A>(input)) return yield* _(Effect.fail(ParseResult.forbidden(input)))
525
+ if (!AsyncData.isAsyncData<E, A>(input)) {
526
+ return yield* _(Effect.fail(ParseResult.forbidden(schema.ast, input)))
527
+ }
576
528
 
577
529
  switch (input._tag) {
578
530
  case "NoData":
579
531
  case "Loading":
580
532
  return input
581
533
  case "Failure": {
582
- const cause = yield* _(parseCause(input.cause, options), parseErrorToParseIssue)
534
+ const cause = yield* _(parseCause(input.cause, options))
583
535
 
584
536
  return AsyncData.failCause(cause, {
585
537
  timestamp: input.timestamp,
@@ -587,7 +539,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
587
539
  })
588
540
  }
589
541
  case "Success": {
590
- const a = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
542
+ const a = yield* _(parseValue(input.value, options))
591
543
 
592
544
  return AsyncData.success(a, {
593
545
  timestamp: input.timestamp,
@@ -596,7 +548,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
596
548
  }
597
549
  case "Optimistic": {
598
550
  const previous = yield* _(parseAsyncData(input.previous, options))
599
- const value = yield* _(parseValue(input.value, options), parseErrorToParseIssue)
551
+ const value = yield* _(parseValue(input.value, options))
600
552
 
601
553
  return AsyncData.optimistic(previous, value, {
602
554
  timestamp: input.timestamp
@@ -615,6 +567,7 @@ export const asyncDataFromSelf = <R1, EI, E, R2, AI, A>(
615
567
  equivalence: () => Equal.equals
616
568
  }
617
569
  )
570
+ return schema
618
571
  }
619
572
 
620
573
  function asyncDataPretty<E, A>(
@@ -710,8 +663,78 @@ function fiberIdFromToFiberId(id: Schema.FiberIdFrom): FiberId.FiberId {
710
663
  }
711
664
  }
712
665
 
713
- function parseErrorToParseIssue<R, A>(
714
- effect: Effect.Effect<R, ParseResult.ParseError, A>
715
- ): Effect.Effect<R, ParseResult.ParseIssue, A> {
716
- return Effect.catchTag(effect, "ParseError", (error) => Effect.fail(error.error))
666
+ function causeToCauseFrom<E>(cause: Cause.Cause<E>): Schema.CauseFrom<E> {
667
+ switch (cause._tag) {
668
+ case "Die":
669
+ return { _tag: "Die", defect: cause.defect }
670
+ case "Empty":
671
+ return { _tag: "Empty" }
672
+ case "Fail":
673
+ return { _tag: "Fail", error: cause.error }
674
+ case "Interrupt":
675
+ return { _tag: "Interrupt", fiberId: fiberIdToFiberIdFrom(cause.fiberId) }
676
+ case "Parallel":
677
+ return { _tag: "Parallel", left: causeToCauseFrom(cause.left), right: causeToCauseFrom(cause.right) }
678
+ case "Sequential":
679
+ return { _tag: "Sequential", left: causeToCauseFrom(cause.left), right: causeToCauseFrom(cause.right) }
680
+ }
681
+ }
682
+
683
+ function fiberIdToFiberIdFrom(id: FiberId.FiberId): Schema.FiberIdFrom {
684
+ switch (id._tag) {
685
+ case "None":
686
+ return { _tag: "None" }
687
+ case "Runtime":
688
+ return { _tag: "Runtime", id: id.id, startTimeMillis: id.startTimeMillis }
689
+ case "Composite":
690
+ return { _tag: "Composite", left: fiberIdToFiberIdFrom(id.left), right: fiberIdToFiberIdFrom(id.right) }
691
+ }
692
+ }
693
+
694
+ const NO_DATA_FROM: NoDataFrom = { _tag: "NoData" } as const
695
+
696
+ function asyncDataToAsyncDataFrom<E, A>(data: AsyncData.AsyncData<E, A>): AsyncDataFrom<E, A> {
697
+ switch (data._tag) {
698
+ case "NoData":
699
+ return NO_DATA_FROM
700
+ case "Loading":
701
+ return loadingToJson(data)
702
+ case "Failure":
703
+ return FailureFrom(
704
+ causeToCauseFrom(data.cause),
705
+ data.timestamp,
706
+ Option.getOrUndefined(Option.map(data.refreshing, loadingToJson))
707
+ )
708
+ case "Success":
709
+ return SuccessFrom(
710
+ data.value,
711
+ data.timestamp,
712
+ Option.getOrUndefined(Option.map(data.refreshing, loadingToJson))
713
+ )
714
+ case "Optimistic":
715
+ return OptimisticFrom(data.value, data.timestamp, asyncDataToAsyncDataFrom(data.previous))
716
+ }
717
+ }
718
+
719
+ function asyncDataFromToAsyncData<E, A>(data: AsyncDataFrom<E, A>): AsyncData.AsyncData<E, A> {
720
+ switch (data._tag) {
721
+ case "NoData":
722
+ return AsyncData.noData()
723
+ case "Loading":
724
+ return loadingFromJson(data)!
725
+ case "Failure":
726
+ return AsyncData.failCause(causeFromToCause(data.cause), {
727
+ timestamp: data.timestamp,
728
+ refreshing: loadingFromJson(data.refreshing)
729
+ })
730
+ case "Success":
731
+ return AsyncData.success(data.value, {
732
+ timestamp: data.timestamp,
733
+ refreshing: loadingFromJson(data.refreshing)
734
+ })
735
+ case "Optimistic":
736
+ return AsyncData.optimistic(asyncDataFromToAsyncData(data.previous), data.value, {
737
+ timestamp: data.timestamp
738
+ })
739
+ }
717
740
  }