effect 4.0.0-beta.50 → 4.0.0-beta.51

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.
Files changed (81) hide show
  1. package/dist/BigDecimal.d.ts.map +1 -1
  2. package/dist/BigDecimal.js +18 -14
  3. package/dist/BigDecimal.js.map +1 -1
  4. package/dist/BigInt.d.ts.map +1 -1
  5. package/dist/BigInt.js +4 -4
  6. package/dist/BigInt.js.map +1 -1
  7. package/dist/Brand.d.ts +2 -4
  8. package/dist/Brand.d.ts.map +1 -1
  9. package/dist/Brand.js.map +1 -1
  10. package/dist/Duration.js +1 -1
  11. package/dist/Duration.js.map +1 -1
  12. package/dist/Schema.d.ts +77 -9
  13. package/dist/Schema.d.ts.map +1 -1
  14. package/dist/Schema.js +37 -7
  15. package/dist/Schema.js.map +1 -1
  16. package/dist/SchemaAST.d.ts +6 -0
  17. package/dist/SchemaAST.d.ts.map +1 -1
  18. package/dist/SchemaAST.js +216 -229
  19. package/dist/SchemaAST.js.map +1 -1
  20. package/dist/SchemaGetter.d.ts +3 -5
  21. package/dist/SchemaGetter.d.ts.map +1 -1
  22. package/dist/SchemaGetter.js +3 -2
  23. package/dist/SchemaGetter.js.map +1 -1
  24. package/dist/SchemaIssue.d.ts.map +1 -1
  25. package/dist/SchemaIssue.js +29 -11
  26. package/dist/SchemaIssue.js.map +1 -1
  27. package/dist/SchemaParser.js +14 -2
  28. package/dist/SchemaParser.js.map +1 -1
  29. package/dist/internal/effect.js +142 -65
  30. package/dist/internal/effect.js.map +1 -1
  31. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  32. package/dist/unstable/cluster/Runners.js +3 -2
  33. package/dist/unstable/cluster/Runners.js.map +1 -1
  34. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  35. package/dist/unstable/cluster/SqlMessageStorage.js +1 -0
  36. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  37. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  38. package/dist/unstable/cluster/SqlRunnerStorage.js +6 -6
  39. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  40. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  41. package/dist/unstable/eventlog/SqlEventJournal.js +9 -8
  42. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  43. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  44. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +6 -5
  45. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  46. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  47. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +6 -5
  48. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  49. package/dist/unstable/httpapi/OpenApi.d.ts +1 -10
  50. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  51. package/dist/unstable/httpapi/OpenApi.js +2 -11
  52. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  53. package/dist/unstable/observability/OtlpMetrics.js +1 -1
  54. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  55. package/dist/unstable/observability/internal/protobuf.js +4 -4
  56. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  57. package/dist/unstable/rpc/RpcSerialization.d.ts +11 -0
  58. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  59. package/dist/unstable/rpc/RpcSerialization.js +14 -9
  60. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  61. package/package.json +1 -1
  62. package/src/BigDecimal.ts +20 -16
  63. package/src/BigInt.ts +4 -4
  64. package/src/Brand.ts +2 -4
  65. package/src/Duration.ts +1 -1
  66. package/src/Schema.ts +87 -11
  67. package/src/SchemaAST.ts +315 -267
  68. package/src/SchemaGetter.ts +4 -6
  69. package/src/SchemaIssue.ts +28 -15
  70. package/src/SchemaParser.ts +8 -2
  71. package/src/internal/effect.ts +196 -69
  72. package/src/unstable/cluster/Runners.ts +8 -5
  73. package/src/unstable/cluster/SqlMessageStorage.ts +1 -0
  74. package/src/unstable/cluster/SqlRunnerStorage.ts +12 -6
  75. package/src/unstable/eventlog/SqlEventJournal.ts +10 -2
  76. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +8 -3
  77. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +9 -3
  78. package/src/unstable/httpapi/OpenApi.ts +2 -14
  79. package/src/unstable/observability/OtlpMetrics.ts +1 -1
  80. package/src/unstable/observability/internal/protobuf.ts +4 -4
  81. package/src/unstable/rpc/RpcSerialization.ts +41 -36
@@ -304,23 +304,21 @@ function encodeJsonRpcMessage(response) {
304
304
  }
305
305
  const jsonRpcInternalError = -32603;
306
306
  /**
307
+ * Create a MessagePack serialization with custom msgpackr options.
308
+ *
307
309
  * @since 4.0.0
308
310
  * @category serialization
309
311
  */
310
- export const msgPack = /*#__PURE__*/RpcSerialization.of({
312
+ export const makeMsgPack = options => RpcSerialization.of({
311
313
  contentType: "application/msgpack",
312
314
  includesFraming: true,
313
315
  makeUnsafe: () => {
314
- const unpackr = new Msgpackr.Unpackr({
315
- useRecords: true
316
- });
317
- const packr = new Msgpackr.Packr({
318
- useRecords: true
319
- });
316
+ const unpackr = new Msgpackr.Unpackr(options);
317
+ const packr = new Msgpackr.Packr(options);
320
318
  const encoder = new TextEncoder();
321
319
  let incomplete = undefined;
322
320
  return {
323
- decode: bytes => {
321
+ decode(bytes) {
324
322
  let buf = typeof bytes === "string" ? encoder.encode(bytes) : bytes;
325
323
  if (incomplete !== undefined) {
326
324
  const prev = buf;
@@ -338,13 +336,20 @@ export const msgPack = /*#__PURE__*/RpcSerialization.of({
338
336
  incomplete = buf.subarray(error.lastPosition);
339
337
  return error.values ?? [];
340
338
  }
341
- return [];
339
+ throw error_;
342
340
  }
343
341
  },
344
342
  encode: response => packr.pack(response)
345
343
  };
346
344
  }
347
345
  });
346
+ /**
347
+ * @since 4.0.0
348
+ * @category serialization
349
+ */
350
+ export const msgPack = /*#__PURE__*/makeMsgPack({
351
+ useRecords: true
352
+ });
348
353
  /**
349
354
  * A rpc serialization layer that uses JSON for serialization.
350
355
  *
@@ -1 +1 @@
1
- {"version":3,"file":"RpcSerialization.js","names":["Msgpackr","Context","Layer","Predicate","hasProperty","RpcSerialization","Service","json","of","contentType","includesFraming","makeUnsafe","decoder","TextDecoder","decode","bytes","decoded","JSON","parse","Array","isArray","encode","response","stringify","ndjson","buffer","position","nlIndex","indexOf","items","item","slice","push","length","undefined","data","i","jsonRpc","options","batches","Map","decodeJsonRpcRaw","encoded","encodeJsonRpcResponse","ndJsonRpc","parser","frames","messages","frame","batch","size","responses","message","decodeJsonRpcMessage","_tag","set","id","isNullish","method","startsWith","tag","requestId","params","String","isNotNullish","payload","headers","spanId","traceId","sampled","error","defect","chunk","values","result","exit","cause","value","encodeJsonRpcRaw","encodeJsonRpcMessage","get","delete","from","current","jsonrpc","Number","find","failure","code","jsonRpcInternalError","msgPack","unpackr","Unpackr","useRecords","packr","Packr","encoder","TextEncoder","incomplete","buf","prev","Uint8Array","unpackMultiple","error_","subarray","lastPosition","pack","layerJson","succeed","layerNdjson","layerJsonRpc","layerNdJsonRpc","layerMsgPack"],"sources":["../../../src/unstable/rpc/RpcSerialization.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RpcSerialization.js","names":["Msgpackr","Context","Layer","Predicate","hasProperty","RpcSerialization","Service","json","of","contentType","includesFraming","makeUnsafe","decoder","TextDecoder","decode","bytes","decoded","JSON","parse","Array","isArray","encode","response","stringify","ndjson","buffer","position","nlIndex","indexOf","items","item","slice","push","length","undefined","data","i","jsonRpc","options","batches","Map","decodeJsonRpcRaw","encoded","encodeJsonRpcResponse","ndJsonRpc","parser","frames","messages","frame","batch","size","responses","message","decodeJsonRpcMessage","_tag","set","id","isNullish","method","startsWith","tag","requestId","params","String","isNotNullish","payload","headers","spanId","traceId","sampled","error","defect","chunk","values","result","exit","cause","value","encodeJsonRpcRaw","encodeJsonRpcMessage","get","delete","from","current","jsonrpc","Number","find","failure","code","jsonRpcInternalError","makeMsgPack","unpackr","Unpackr","packr","Packr","encoder","TextEncoder","incomplete","buf","prev","Uint8Array","unpackMultiple","error_","subarray","lastPosition","pack","msgPack","useRecords","layerJson","succeed","layerNdjson","layerJsonRpc","layerNdJsonRpc","layerMsgPack"],"sources":["../../../src/unstable/rpc/RpcSerialization.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "effect",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.50",
4
+ "version": "4.0.0-beta.51",
5
5
  "license": "MIT",
6
6
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
7
7
  "homepage": "https://effect.website",
package/src/BigDecimal.ts CHANGED
@@ -142,6 +142,10 @@ export const makeNormalizedUnsafe = (value: bigint, scale: number): BigDecimal =
142
142
 
143
143
  const bigint0 = BigInt(0)
144
144
  const bigint1 = BigInt(1)
145
+ const bigint_1 = BigInt(-1)
146
+ const bigint2 = BigInt(2)
147
+ const bigint5 = BigInt(5)
148
+ const bigint_5 = BigInt(-5)
145
149
  const bigint10 = BigInt(10)
146
150
  const zero = makeNormalizedUnsafe(bigint0, 0)
147
151
  const one = makeNormalizedUnsafe(bigint1, 0)
@@ -2320,32 +2324,32 @@ export const round: {
2320
2324
  return (isPositive(self) ? ceil(self, scale) : floor(self, scale))
2321
2325
 
2322
2326
  case "half-ceil":
2323
- return floor(sum(self, make(5n, scale + 1)), scale)
2327
+ return floor(sum(self, make(bigint5, scale + 1)), scale)
2324
2328
 
2325
2329
  case "half-floor":
2326
- return ceil(sum(self, make(-5n, scale + 1)), scale)
2330
+ return ceil(sum(self, make(bigint_5, scale + 1)), scale)
2327
2331
 
2328
2332
  case "half-to-zero":
2329
2333
  return isNegative(self)
2330
- ? floor(sum(self, make(5n, scale + 1)), scale)
2331
- : ceil(sum(self, make(-5n, scale + 1)), scale)
2334
+ ? floor(sum(self, make(bigint5, scale + 1)), scale)
2335
+ : ceil(sum(self, make(bigint_5, scale + 1)), scale)
2332
2336
 
2333
2337
  case "half-from-zero":
2334
2338
  return isNegative(self)
2335
- ? ceil(sum(self, make(-5n, scale + 1)), scale)
2336
- : floor(sum(self, make(5n, scale + 1)), scale)
2339
+ ? ceil(sum(self, make(bigint_5, scale + 1)), scale)
2340
+ : floor(sum(self, make(bigint5, scale + 1)), scale)
2337
2341
  }
2338
2342
 
2339
- const halfCeil = floor(sum(self, make(5n, scale + 1)), scale)
2340
- const halfFloor = ceil(sum(self, make(-5n, scale + 1)), scale)
2343
+ const halfCeil = floor(sum(self, make(bigint5, scale + 1)), scale)
2344
+ const halfFloor = ceil(sum(self, make(bigint_5, scale + 1)), scale)
2341
2345
  const digit = digitAt(halfCeil, scale)
2342
2346
 
2343
2347
  switch (mode) {
2344
2348
  case "half-even":
2345
- return equals(halfCeil, halfFloor) ? halfCeil : (digit % 2n === 0n) ? halfCeil : halfFloor
2349
+ return equals(halfCeil, halfFloor) ? halfCeil : (digit % bigint2 === bigint0) ? halfCeil : halfFloor
2346
2350
 
2347
2351
  case "half-odd":
2348
- return equals(halfCeil, halfFloor) ? halfCeil : (digit % 2n === 0n) ? halfFloor : halfCeil
2352
+ return equals(halfCeil, halfFloor) ? halfCeil : (digit % bigint2 === bigint0) ? halfFloor : halfCeil
2349
2353
  }
2350
2354
  })
2351
2355
 
@@ -2421,7 +2425,7 @@ export const truncate: {
2421
2425
  }
2422
2426
 
2423
2427
  // BigInt division truncates towards zero
2424
- return make(self.value / (10n ** BigInt(self.scale - scale)), scale)
2428
+ return make(self.value / (bigint10 ** BigInt(self.scale - scale)), scale)
2425
2429
  })
2426
2430
 
2427
2431
  /**
@@ -2485,7 +2489,7 @@ export const ceil: {
2485
2489
  const truncated = truncate(self, scale)
2486
2490
 
2487
2491
  if (isPositive(self) && isLessThan(truncated, self)) {
2488
- return sum(truncated, make(1n, scale))
2492
+ return sum(truncated, make(bigint1, scale))
2489
2493
  }
2490
2494
 
2491
2495
  return truncated
@@ -2517,11 +2521,11 @@ export const digitAt: {
2517
2521
  (self: BigDecimal, scale: number): bigint
2518
2522
  } = dual(2, (self: BigDecimal, scale: number): bigint => {
2519
2523
  if (self.scale < scale) {
2520
- return 0n
2524
+ return bigint0
2521
2525
  }
2522
2526
 
2523
- const scaled = self.value / (10n ** BigInt(self.scale - scale))
2524
- return scaled % 10n
2527
+ const scaled = self.value / (bigint10 ** BigInt(self.scale - scale))
2528
+ return scaled % bigint10
2525
2529
  })
2526
2530
 
2527
2531
  /**
@@ -2594,7 +2598,7 @@ export const floor: {
2594
2598
  const truncated = truncate(self, scale)
2595
2599
 
2596
2600
  if (isNegative(self) && isGreaterThan(truncated, self)) {
2597
- return sum(truncated, make(-1n, scale))
2601
+ return sum(truncated, make(bigint_1, scale))
2598
2602
  }
2599
2603
 
2600
2604
  return truncated
package/src/BigInt.ts CHANGED
@@ -1248,17 +1248,17 @@ export const remainder: {
1248
1248
  *
1249
1249
  * @since 4.0.0
1250
1250
  */
1251
- export const ReducerSum: Reducer.Reducer<bigint> = Reducer.make((a, b) => a + b, 0n)
1251
+ export const ReducerSum: Reducer.Reducer<bigint> = Reducer.make((a, b) => a + b, bigint0)
1252
1252
 
1253
1253
  /**
1254
1254
  * A `Reducer` for combining `bigint`s using multiplication.
1255
1255
  *
1256
1256
  * @since 4.0.0
1257
1257
  */
1258
- export const ReducerMultiply: Reducer.Reducer<bigint> = Reducer.make((a, b) => a * b, 1n, (collection) => {
1259
- let acc = 1n
1258
+ export const ReducerMultiply: Reducer.Reducer<bigint> = Reducer.make((a, b) => a * b, bigint1, (collection) => {
1259
+ let acc = bigint1
1260
1260
  for (const n of collection) {
1261
- if (n === 0n) return 0n
1261
+ if (n === bigint0) return bigint0
1262
1262
  acc *= n
1263
1263
  }
1264
1264
  return acc
package/src/Brand.ts CHANGED
@@ -8,6 +8,7 @@
8
8
  import * as Arr from "./Array.ts"
9
9
  import * as Option from "./Option.ts"
10
10
  import * as Result from "./Result.ts"
11
+ import type * as Schema from "./Schema.ts"
11
12
  import * as AST from "./SchemaAST.ts"
12
13
  import type * as Issue from "./SchemaIssue.ts"
13
14
  import type * as Types from "./Types.ts"
@@ -192,10 +193,7 @@ export function nominal<A extends Brand<any>>(): Constructor<A> {
192
193
  * @since 2.0.0
193
194
  */
194
195
  export function make<A extends Brand<any>>(
195
- filter: (unbranded: Brand.Unbranded<A>) => undefined | boolean | string | Issue.Issue | {
196
- readonly path: ReadonlyArray<PropertyKey>
197
- readonly message: string
198
- }
196
+ filter: (unbranded: Brand.Unbranded<A>) => Schema.FilterOutput
199
197
  ): Constructor<A> {
200
198
  return check(AST.makeFilter(filter))
201
199
  }
package/src/Duration.ts CHANGED
@@ -864,7 +864,7 @@ export const toHrTime = (self: Duration): [seconds: number, nanos: number] => {
864
864
  return [-Infinity, 0]
865
865
  case "Nanos": {
866
866
  const n = self.value.nanos
867
- const sign = n < bigint0 ? -1n : 1n
867
+ const sign = n < bigint0 ? -BigInt(1) : BigInt(1)
868
868
  const a = n < bigint0 ? -n : n
869
869
  return [
870
870
  Number(sign * (a / bigint1e9)),
package/src/Schema.ts CHANGED
@@ -4951,32 +4951,106 @@ export function link<T>() { // TODO: better name
4951
4951
  /**
4952
4952
  * Creates a custom filter check from a predicate function. The predicate
4953
4953
  * receives the input value, the schema's AST, and parse options, and returns
4954
- * `true`/`undefined` on success or a failure description on error.
4954
+ * a value of type {@link FilterOutput}.
4955
+ *
4956
+ * **Example** (Failure at a nested path)
4957
+ *
4958
+ * ```ts
4959
+ * import { Schema } from "effect"
4960
+ *
4961
+ * const schema = Schema.Struct({ password: Schema.String, confirmPassword: Schema.String }).check(
4962
+ * Schema.makeFilter((o) =>
4963
+ * o.password === o.confirmPassword
4964
+ * ? undefined
4965
+ * : { path: ["password"], issue: "password and confirmPassword must match" }
4966
+ * )
4967
+ * )
4968
+ *
4969
+ * console.log(String(Schema.decodeUnknownExit(schema)({ password: "123456", confirmPassword: "1234567" })))
4970
+ * // Failure(Cause([Fail(SchemaError: password and confirmPassword must match
4971
+ * // at ["password"])]))
4972
+ * ```
4973
+ *
4974
+ * **Example** (Reporting multiple failures at once)
4955
4975
  *
4956
- * **Example** (Custom filter check)
4957
4976
  * ```ts
4958
4977
  * import { Schema } from "effect"
4959
4978
  *
4960
- * // Check that a number is even
4961
- * const isEven = Schema.makeFilter(
4962
- * (n: number) => n % 2 === 0 || "expected an even number"
4979
+ * const schema = Schema.Struct({ a: Schema.Finite, b: Schema.Finite, c: Schema.Finite }).check(
4980
+ * Schema.makeFilter((o) => {
4981
+ * const issues: Array<Schema.FilterIssue> = []
4982
+ * if (o.a > 0) {
4983
+ * if (o.b <= 0) issues.push({ path: ["b"], issue: "b must be greater than 0" })
4984
+ * if (o.c <= 0) issues.push({ path: ["c"], issue: "c must be greater than 0" })
4985
+ * }
4986
+ * return issues
4987
+ * })
4963
4988
  * )
4964
4989
  *
4965
- * const EvenNumber = Schema.Number.check(isEven)
4990
+ * console.log(String(Schema.decodeUnknownExit(schema)({ a: 1, b: 0, c: 0 })))
4991
+ * // Failure(Cause([Fail(SchemaError: b must be greater than 0
4992
+ * // at ["b"]
4993
+ * // c must be greater than 0
4994
+ * // at ["c"])]))
4966
4995
  * ```
4967
4996
  *
4968
4997
  * @category Checks Constructors
4969
4998
  * @since 4.0.0
4970
4999
  */
4971
5000
  export const makeFilter: <T>(
4972
- filter: (input: T, ast: AST.AST, options: AST.ParseOptions) => undefined | boolean | string | Issue.Issue | {
4973
- readonly path: ReadonlyArray<PropertyKey>
4974
- readonly message: string
4975
- },
5001
+ filter: (input: T, ast: AST.AST, options: AST.ParseOptions) => FilterOutput,
4976
5002
  annotations?: Annotations.Filter | undefined,
4977
5003
  abort?: boolean
4978
5004
  ) => AST.Filter<T> = AST.makeFilter
4979
5005
 
5006
+ /**
5007
+ * A single failure reported by a filter predicate. Used as the element type
5008
+ * of the array arm of {@link FilterOutput}, and also accepted on its own.
5009
+ *
5010
+ * - `string`: failure with that string as the message. Produces an
5011
+ * {@link Issue.InvalidValue} wrapping the input, with the string used as
5012
+ * the issue's `message` annotation.
5013
+ * - {@link Issue.Issue}: a fully-formed issue, returned as-is.
5014
+ * - `{ path, issue }`: failure attached to a nested path. `issue` is either
5015
+ * a `string` (wrapped in an {@link Issue.InvalidValue}) or a full
5016
+ * {@link Issue.Issue}; the result is wrapped in an {@link Issue.Pointer}
5017
+ * at the given `path`.
5018
+ *
5019
+ * @category model
5020
+ * @since 4.0.0
5021
+ */
5022
+ export type FilterIssue = string | Issue.Issue | {
5023
+ readonly path: ReadonlyArray<PropertyKey>
5024
+ readonly issue: string | Issue.Issue
5025
+ }
5026
+
5027
+ /**
5028
+ * The value a filter predicate (see {@link makeFilter}) may return.
5029
+ *
5030
+ * Each shape is normalized into an {@link Issue.Issue} (or `undefined` for
5031
+ * success) before being attached to the parse result:
5032
+ *
5033
+ * - `undefined`: success. The input satisfies the filter.
5034
+ * - `true`: success. Equivalent to `undefined`, useful when the predicate is
5035
+ * a plain boolean expression.
5036
+ * - `false`: generic failure. Produces an {@link Issue.InvalidValue} wrapping
5037
+ * the input, with no custom message.
5038
+ * - {@link FilterIssue}: a single failure. See {@link FilterIssue} for the
5039
+ * shapes (`string`, {@link Issue.Issue}, or `{ path, issue }`).
5040
+ * - `ReadonlyArray<FilterIssue>`: several failures reported together. An
5041
+ * empty array is treated as success; a single-element array is equivalent
5042
+ * to returning that element directly; otherwise the entries are grouped
5043
+ * into an {@link Issue.Composite}.
5044
+ *
5045
+ * @category model
5046
+ * @since 4.0.0
5047
+ */
5048
+ export type FilterOutput =
5049
+ | undefined
5050
+ | boolean
5051
+ | FilterIssue
5052
+ | ReadonlyArray<FilterIssue>
5053
+
4980
5054
  /**
4981
5055
  * Groups multiple checks into a single {@link AST.FilterGroup}, applying
4982
5056
  * optional shared annotations to the group as a whole.
@@ -8794,6 +8868,8 @@ export interface DurationFromNanos extends decodeTo<Duration, BigInt> {
8794
8868
  readonly "Rebuild": DurationFromNanos
8795
8869
  }
8796
8870
 
8871
+ const bigint0 = globalThis.BigInt(0)
8872
+
8797
8873
  /**
8798
8874
  * A transformation schema that decodes a non-negative `bigint` into a
8799
8875
  * `Duration`, treating the `bigint` value as the duration in nanoseconds.
@@ -8807,7 +8883,7 @@ export interface DurationFromNanos extends decodeTo<Duration, BigInt> {
8807
8883
  * @category Duration
8808
8884
  * @since 4.0.0
8809
8885
  */
8810
- export const DurationFromNanos: DurationFromNanos = BigInt.check(isGreaterThanOrEqualToBigInt(0n)).pipe(
8886
+ export const DurationFromNanos: DurationFromNanos = BigInt.check(isGreaterThanOrEqualToBigInt(bigint0)).pipe(
8811
8887
  decodeTo(Duration, Transformation.durationFromNanos)
8812
8888
  )
8813
8889