effect 3.13.9 → 3.13.11

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 (119) hide show
  1. package/dist/cjs/Arbitrary.js +38 -22
  2. package/dist/cjs/Arbitrary.js.map +1 -1
  3. package/dist/cjs/Array.js +50 -50
  4. package/dist/cjs/Array.js.map +1 -1
  5. package/dist/cjs/Brand.js +9 -4
  6. package/dist/cjs/Brand.js.map +1 -1
  7. package/dist/cjs/Cause.js +1 -0
  8. package/dist/cjs/Cause.js.map +1 -1
  9. package/dist/cjs/Chunk.js +25 -23
  10. package/dist/cjs/Chunk.js.map +1 -1
  11. package/dist/cjs/Config.js +2 -1
  12. package/dist/cjs/Config.js.map +1 -1
  13. package/dist/cjs/Context.js +4 -4
  14. package/dist/cjs/Effect.js +823 -632
  15. package/dist/cjs/Effect.js.map +1 -1
  16. package/dist/cjs/Either.js +12 -12
  17. package/dist/cjs/Either.js.map +1 -1
  18. package/dist/cjs/LogLevel.js +1 -1
  19. package/dist/cjs/Logger.js +12 -12
  20. package/dist/cjs/Match.js +26 -26
  21. package/dist/cjs/Option.js +43 -43
  22. package/dist/cjs/Predicate.js +6 -2
  23. package/dist/cjs/Predicate.js.map +1 -1
  24. package/dist/cjs/Schema.js +21 -17
  25. package/dist/cjs/Schema.js.map +1 -1
  26. package/dist/cjs/SchemaAST.js +49 -25
  27. package/dist/cjs/SchemaAST.js.map +1 -1
  28. package/dist/cjs/Scope.js +2 -0
  29. package/dist/cjs/Scope.js.map +1 -1
  30. package/dist/cjs/Stream.js +93 -93
  31. package/dist/cjs/internal/core.js +1 -1
  32. package/dist/cjs/internal/core.js.map +1 -1
  33. package/dist/cjs/internal/schema/util.js +23 -14
  34. package/dist/cjs/internal/schema/util.js.map +1 -1
  35. package/dist/cjs/internal/version.js +1 -1
  36. package/dist/cjs/internal/version.js.map +1 -1
  37. package/dist/dts/Array.d.ts +47 -47
  38. package/dist/dts/Array.d.ts.map +1 -1
  39. package/dist/dts/Brand.d.ts +14 -6
  40. package/dist/dts/Brand.d.ts.map +1 -1
  41. package/dist/dts/Cause.d.ts +1 -0
  42. package/dist/dts/Cause.d.ts.map +1 -1
  43. package/dist/dts/Chunk.d.ts +91 -89
  44. package/dist/dts/Chunk.d.ts.map +1 -1
  45. package/dist/dts/Config.d.ts +2 -1
  46. package/dist/dts/Config.d.ts.map +1 -1
  47. package/dist/dts/Context.d.ts +4 -4
  48. package/dist/dts/Effect.d.ts +2107 -1621
  49. package/dist/dts/Effect.d.ts.map +1 -1
  50. package/dist/dts/Either.d.ts +33 -33
  51. package/dist/dts/LogLevel.d.ts +3 -3
  52. package/dist/dts/Logger.d.ts +16 -16
  53. package/dist/dts/Match.d.ts +26 -26
  54. package/dist/dts/Option.d.ts +84 -84
  55. package/dist/dts/Predicate.d.ts.map +1 -1
  56. package/dist/dts/Schema.d.ts +53 -21
  57. package/dist/dts/Schema.d.ts.map +1 -1
  58. package/dist/dts/SchemaAST.d.ts.map +1 -1
  59. package/dist/dts/Scope.d.ts +2 -0
  60. package/dist/dts/Scope.d.ts.map +1 -1
  61. package/dist/dts/Stream.d.ts +229 -229
  62. package/dist/esm/Arbitrary.js +38 -22
  63. package/dist/esm/Arbitrary.js.map +1 -1
  64. package/dist/esm/Array.js +50 -50
  65. package/dist/esm/Array.js.map +1 -1
  66. package/dist/esm/Brand.js +9 -4
  67. package/dist/esm/Brand.js.map +1 -1
  68. package/dist/esm/Cause.js +1 -0
  69. package/dist/esm/Cause.js.map +1 -1
  70. package/dist/esm/Chunk.js +25 -23
  71. package/dist/esm/Chunk.js.map +1 -1
  72. package/dist/esm/Config.js +2 -1
  73. package/dist/esm/Config.js.map +1 -1
  74. package/dist/esm/Context.js +4 -4
  75. package/dist/esm/Effect.js +845 -648
  76. package/dist/esm/Effect.js.map +1 -1
  77. package/dist/esm/Either.js +17 -17
  78. package/dist/esm/Either.js.map +1 -1
  79. package/dist/esm/LogLevel.js +1 -1
  80. package/dist/esm/Logger.js +12 -12
  81. package/dist/esm/Match.js +26 -26
  82. package/dist/esm/Option.js +48 -48
  83. package/dist/esm/Predicate.js +3 -0
  84. package/dist/esm/Predicate.js.map +1 -1
  85. package/dist/esm/Schema.js +21 -17
  86. package/dist/esm/Schema.js.map +1 -1
  87. package/dist/esm/SchemaAST.js +46 -22
  88. package/dist/esm/SchemaAST.js.map +1 -1
  89. package/dist/esm/Scope.js +2 -0
  90. package/dist/esm/Scope.js.map +1 -1
  91. package/dist/esm/Stream.js +101 -101
  92. package/dist/esm/internal/core.js +1 -1
  93. package/dist/esm/internal/core.js.map +1 -1
  94. package/dist/esm/internal/schema/util.js +23 -14
  95. package/dist/esm/internal/schema/util.js.map +1 -1
  96. package/dist/esm/internal/version.js +1 -1
  97. package/dist/esm/internal/version.js.map +1 -1
  98. package/package.json +1 -1
  99. package/src/Arbitrary.ts +39 -24
  100. package/src/Array.ts +116 -113
  101. package/src/Brand.ts +14 -6
  102. package/src/Cause.ts +1 -0
  103. package/src/Chunk.ts +97 -95
  104. package/src/Config.ts +2 -1
  105. package/src/Context.ts +4 -4
  106. package/src/Effect.ts +2107 -1621
  107. package/src/Either.ts +34 -34
  108. package/src/LogLevel.ts +3 -3
  109. package/src/Logger.ts +16 -16
  110. package/src/Match.ts +26 -26
  111. package/src/Option.ts +84 -84
  112. package/src/Predicate.ts +4 -0
  113. package/src/Schema.ts +87 -41
  114. package/src/SchemaAST.ts +47 -22
  115. package/src/Scope.ts +2 -0
  116. package/src/Stream.ts +229 -229
  117. package/src/internal/core.ts +2 -1
  118. package/src/internal/schema/util.ts +34 -25
  119. package/src/internal/version.ts +1 -1
@@ -212,15 +212,26 @@ const constBigIntConstraints = /*#__PURE__*/makeBigIntConstraints({});
212
212
  const defaultSuspendedArrayConstraints = {
213
213
  maxLength: 2
214
214
  };
215
+ const getASTConstraints = ast => {
216
+ const TypeAnnotationId = ast.annotations[AST.SchemaIdAnnotationId];
217
+ if (Predicate.isPropertyKey(TypeAnnotationId)) {
218
+ const out = ast.annotations[TypeAnnotationId];
219
+ if (Predicate.isReadonlyRecord(out)) {
220
+ return out;
221
+ }
222
+ }
223
+ };
215
224
  /** @internal */
216
225
  export const toOp = (ast, ctx, path) => {
217
226
  switch (ast._tag) {
218
227
  case "Declaration":
219
228
  {
220
229
  const TypeAnnotationId = ast.annotations[AST.SchemaIdAnnotationId];
221
- switch (TypeAnnotationId) {
222
- case schemaId_.DateFromSelfSchemaId:
223
- return new Deferred(makeDateConstraints(ast.annotations[TypeAnnotationId]));
230
+ if (TypeAnnotationId === schemaId_.DateFromSelfSchemaId) {
231
+ const c = getASTConstraints(ast);
232
+ if (c !== undefined) {
233
+ return new Deferred(makeDateConstraints(c));
234
+ }
224
235
  }
225
236
  return new Succeed(go(ast, ctx, path));
226
237
  }
@@ -301,7 +312,7 @@ export const toOp = (ast, ctx, path) => {
301
312
  }
302
313
  case "Deferred":
303
314
  {
304
- return new Deferred(merge(from.config, getConstraints(from.config._tag, ast)), filters);
315
+ return new Deferred(merge(from.config, getRefinementConstraints(from.config._tag, ast)), filters);
305
316
  }
306
317
  }
307
318
  }
@@ -462,7 +473,7 @@ const goTupleType = (ast, ctx, path, constraints) => {
462
473
  return output;
463
474
  };
464
475
  };
465
- const getConstraints = (_tag, ast) => {
476
+ const getRefinementConstraints = (_tag, ast) => {
466
477
  const TypeAnnotationId = ast.annotations[AST.SchemaIdAnnotationId];
467
478
  const jsonSchema = Option.getOrElse(AST.getJSONSchemaAnnotation(ast), () => ({}));
468
479
  switch (_tag) {
@@ -470,27 +481,32 @@ const getConstraints = (_tag, ast) => {
470
481
  return makeStringConstraints(jsonSchema);
471
482
  case "NumberConstraints":
472
483
  {
473
- switch (TypeAnnotationId) {
474
- case schemaId_.NonNaNSchemaId:
475
- return makeNumberConstraints({
476
- noNaN: true
477
- });
478
- default:
479
- return makeNumberConstraints({
480
- isInteger: "type" in jsonSchema && jsonSchema.type === "integer",
481
- noNaN: "type" in jsonSchema && jsonSchema.type === "number" ? true : undefined,
482
- noDefaultInfinity: "type" in jsonSchema && jsonSchema.type === "number" ? true : undefined,
483
- min: jsonSchema.exclusiveMinimum ?? jsonSchema.minimum,
484
- minExcluded: "exclusiveMinimum" in jsonSchema ? true : undefined,
485
- max: jsonSchema.exclusiveMaximum ?? jsonSchema.maximum,
486
- maxExcluded: "exclusiveMaximum" in jsonSchema ? true : undefined
487
- });
484
+ if (TypeAnnotationId === schemaId_.NonNaNSchemaId) {
485
+ return makeNumberConstraints({
486
+ noNaN: true
487
+ });
488
+ } else {
489
+ return makeNumberConstraints({
490
+ isInteger: "type" in jsonSchema && jsonSchema.type === "integer",
491
+ noNaN: "type" in jsonSchema && jsonSchema.type === "number" ? true : undefined,
492
+ noDefaultInfinity: "type" in jsonSchema && jsonSchema.type === "number" ? true : undefined,
493
+ min: jsonSchema.exclusiveMinimum ?? jsonSchema.minimum,
494
+ minExcluded: "exclusiveMinimum" in jsonSchema ? true : undefined,
495
+ max: jsonSchema.exclusiveMaximum ?? jsonSchema.maximum,
496
+ maxExcluded: "exclusiveMaximum" in jsonSchema ? true : undefined
497
+ });
488
498
  }
489
499
  }
490
500
  case "BigIntConstraints":
491
- return makeBigIntConstraints(ast.annotations[TypeAnnotationId]);
501
+ {
502
+ const c = getASTConstraints(ast);
503
+ return c !== undefined ? makeBigIntConstraints(c) : undefined;
504
+ }
492
505
  case "DateConstraints":
493
- return makeDateConstraints(ast.annotations[TypeAnnotationId]);
506
+ {
507
+ const c = getASTConstraints(ast);
508
+ return c !== undefined ? makeDateConstraints(c) : undefined;
509
+ }
494
510
  case "ArrayConstraints":
495
511
  return makeArrayConstraints({
496
512
  minLength: jsonSchema.minItems,
@@ -1 +1 @@
1
- {"version":3,"file":"Arbitrary.js","names":["Arr","FastCheck","globalValue","errors_","schemaId_","util_","Option","Predicate","AST","makeLazy","schema","go","ast","maxDepth","make","getArbitraryAnnotation","getAnnotation","ArbitraryAnnotationId","Succeed","lazyArbitrary","filters","_tag","constructor","toLazyArbitrary","fc","out","f","filter","Deferred","config","ctx","path","pattern","undefined","stringMatching","RegExp","string","constraints","isInteger","integer","float","bigInt","date","goTupleType","makeStringConstraints","options","isNumber","minLength","maxLength","isString","makeNumberConstraints","min","Math","fround","isBoolean","minExcluded","max","maxExcluded","noNaN","noDefaultInfinity","makeBigIntConstraints","isBigInt","makeArrayConstraints","makeDateConstraints","noInvalidDate","isDate","makeArrayConfig","arbitraryMemoMap","Symbol","for","WeakMap","hook","isSome","value","typeParameters","map","p","op","toOp","from","isDeclaration","Error","getArbitraryMissingAnnotationErrorMessage","constStringConstraints","constNumberConstraints","constBigIntConstraints","defaultSuspendedArrayConstraints","TypeAnnotationId","annotations","SchemaIdAnnotationId","DateFromSelfSchemaId","constant","literal","symbol","anything","boolean","s","oneof","object","array","enums","length","getArbitraryEmptyEnumErrorMessage","_","number","getTemplateLiteralArb","components","head","getTemplateLiteralSpanTypeArb","String","types","spans","forEach","span","push","type","tuple","join","a","isNone","defaultParseOption","merge","getConstraints","propertySignaturesTypes","propertySignatures","ps","concat","name","indexSignatures","is","parameter","arbs","requiredKeys","i","isOptional","output","record","key","chain","o","item","arr","depthIdentifier","getSuspendedArray","tuples","Object","fromEntries","member","arb","memo","get","memoizeThunk","getSuspendedContext","set","to","subtractElementsLength","elementsLength","elements","hasOptionals","element","rest","annotatedAST","indexes","booleans","b","reverse","entries","splice","isNonEmptyReadonlyArray","tail","as","len","restArrayConstraints","j","jsonSchema","getOrElse","getJSONSchemaAnnotation","NonNaNSchemaId","exclusiveMinimum","minimum","exclusiveMaximum","maximum","minItems","maxItems","getMax","n1","n2","getMin","getOr","mergePattern","pattern1","pattern2","c1","c2","maxLengthLimit","getIdentifierAnnotation","pipe","orElse"],"sources":["../../src/Arbitrary.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Arbitrary.js","names":["Arr","FastCheck","globalValue","errors_","schemaId_","util_","Option","Predicate","AST","makeLazy","schema","go","ast","maxDepth","make","getArbitraryAnnotation","getAnnotation","ArbitraryAnnotationId","Succeed","lazyArbitrary","filters","_tag","constructor","toLazyArbitrary","fc","out","f","filter","Deferred","config","ctx","path","pattern","undefined","stringMatching","RegExp","string","constraints","isInteger","integer","float","bigInt","date","goTupleType","makeStringConstraints","options","isNumber","minLength","maxLength","isString","makeNumberConstraints","min","Math","fround","isBoolean","minExcluded","max","maxExcluded","noNaN","noDefaultInfinity","makeBigIntConstraints","isBigInt","makeArrayConstraints","makeDateConstraints","noInvalidDate","isDate","makeArrayConfig","arbitraryMemoMap","Symbol","for","WeakMap","hook","isSome","value","typeParameters","map","p","op","toOp","from","isDeclaration","Error","getArbitraryMissingAnnotationErrorMessage","constStringConstraints","constNumberConstraints","constBigIntConstraints","defaultSuspendedArrayConstraints","getASTConstraints","TypeAnnotationId","annotations","SchemaIdAnnotationId","isPropertyKey","isReadonlyRecord","DateFromSelfSchemaId","c","constant","literal","symbol","anything","boolean","s","oneof","object","array","enums","length","getArbitraryEmptyEnumErrorMessage","_","number","getTemplateLiteralArb","components","head","getTemplateLiteralSpanTypeArb","String","types","spans","forEach","span","push","type","tuple","join","a","isNone","defaultParseOption","merge","getRefinementConstraints","propertySignaturesTypes","propertySignatures","ps","concat","name","indexSignatures","is","parameter","arbs","requiredKeys","i","isOptional","output","record","key","chain","o","item","arr","depthIdentifier","getSuspendedArray","tuples","Object","fromEntries","member","arb","memo","get","memoizeThunk","getSuspendedContext","set","to","subtractElementsLength","elementsLength","elements","hasOptionals","element","rest","annotatedAST","indexes","booleans","b","reverse","entries","splice","isNonEmptyReadonlyArray","tail","as","len","restArrayConstraints","j","jsonSchema","getOrElse","getJSONSchemaAnnotation","NonNaNSchemaId","exclusiveMinimum","minimum","exclusiveMaximum","maximum","minItems","maxItems","getMax","n1","n2","getMin","getOr","mergePattern","pattern1","pattern2","c1","c2","maxLengthLimit","getIdentifierAnnotation","pipe","orElse"],"sources":["../../src/Arbitrary.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/esm/Array.js CHANGED
@@ -3,16 +3,16 @@
3
3
  *
4
4
  * @since 2.0.0
5
5
  */
6
- import * as E from "./Either.js";
6
+ import * as Either from "./Either.js";
7
7
  import * as Equal from "./Equal.js";
8
8
  import * as Equivalence from "./Equivalence.js";
9
9
  import { dual, identity } from "./Function.js";
10
- import * as readonlyArray from "./internal/array.js";
11
- import * as doNotation from "./internal/doNotation.js";
12
- import * as EffectIterable from "./Iterable.js";
13
- import * as O from "./Option.js";
10
+ import * as internalArray from "./internal/array.js";
11
+ import * as internalDoNotation from "./internal/doNotation.js";
12
+ import * as moduleIterable from "./Iterable.js";
13
+ import * as Option from "./Option.js";
14
14
  import * as Order from "./Order.js";
15
- import { isBoolean } from "./Predicate.js";
15
+ import * as Predicate from "./Predicate.js";
16
16
  import * as Record from "./Record.js";
17
17
  import * as Tuple from "./Tuple.js";
18
18
  /**
@@ -172,7 +172,7 @@ export const fromRecord = Record.toEntries;
172
172
  * @category conversions
173
173
  * @since 2.0.0
174
174
  */
175
- export const fromOption = O.toArray;
175
+ export const fromOption = Option.toArray;
176
176
  /**
177
177
  * Matches the elements of an array, applying functions to cases of empty and non-empty arrays.
178
178
  *
@@ -422,7 +422,7 @@ export const isEmptyReadonlyArray = isEmptyArray;
422
422
  * @category guards
423
423
  * @since 2.0.0
424
424
  */
425
- export const isNonEmptyArray = readonlyArray.isNonEmptyArray;
425
+ export const isNonEmptyArray = internalArray.isNonEmptyArray;
426
426
  /**
427
427
  * Determine if a `ReadonlyArray` is non empty narrowing down the type to `NonEmptyReadonlyArray`.
428
428
  *
@@ -440,7 +440,7 @@ export const isNonEmptyArray = readonlyArray.isNonEmptyArray;
440
440
  * @category guards
441
441
  * @since 2.0.0
442
442
  */
443
- export const isNonEmptyReadonlyArray = readonlyArray.isNonEmptyArray;
443
+ export const isNonEmptyReadonlyArray = internalArray.isNonEmptyArray;
444
444
  /**
445
445
  * Return the number of elements in a `ReadonlyArray`.
446
446
  *
@@ -448,7 +448,7 @@ export const isNonEmptyReadonlyArray = readonlyArray.isNonEmptyArray;
448
448
  * @since 2.0.0
449
449
  */
450
450
  export const length = self => self.length;
451
- const isOutOfBound = (i, as) => i < 0 || i >= as.length;
451
+ const isOutOfBounds = (i, as) => i < 0 || i >= as.length;
452
452
  const clamp = (i, as) => Math.floor(Math.min(Math.max(0, i), as.length));
453
453
  /**
454
454
  * This function provides a safe way to read a value at a particular index from a `ReadonlyArray`.
@@ -458,7 +458,7 @@ const clamp = (i, as) => Math.floor(Math.min(Math.max(0, i), as.length));
458
458
  */
459
459
  export const get = /*#__PURE__*/dual(2, (self, index) => {
460
460
  const i = Math.floor(index);
461
- return isOutOfBound(i, self) ? O.none() : O.some(self[i]);
461
+ return isOutOfBounds(i, self) ? Option.none() : Option.some(self[i]);
462
462
  });
463
463
  /**
464
464
  * Gets an element unsafely, will throw on out of bounds.
@@ -468,7 +468,7 @@ export const get = /*#__PURE__*/dual(2, (self, index) => {
468
468
  */
469
469
  export const unsafeGet = /*#__PURE__*/dual(2, (self, index) => {
470
470
  const i = Math.floor(index);
471
- if (isOutOfBound(i, self)) {
471
+ if (isOutOfBounds(i, self)) {
472
472
  throw new Error(`Index ${i} out of bounds`);
473
473
  }
474
474
  return self[i];
@@ -534,7 +534,7 @@ export const headNonEmpty = /*#__PURE__*/unsafeGet(0);
534
534
  * @category getters
535
535
  * @since 2.0.0
536
536
  */
537
- export const last = self => isNonEmptyReadonlyArray(self) ? O.some(lastNonEmpty(self)) : O.none();
537
+ export const last = self => isNonEmptyReadonlyArray(self) ? Option.some(lastNonEmpty(self)) : Option.none();
538
538
  /**
539
539
  * Get the last element of a non empty array.
540
540
  *
@@ -559,7 +559,7 @@ export const lastNonEmpty = self => self[self.length - 1];
559
559
  */
560
560
  export const tail = self => {
561
561
  const input = fromIterable(self);
562
- return isNonEmptyReadonlyArray(input) ? O.some(tailNonEmpty(input)) : O.none();
562
+ return isNonEmptyReadonlyArray(input) ? Option.some(tailNonEmpty(input)) : Option.none();
563
563
  };
564
564
  /**
565
565
  * Get all but the first element of a `NonEmptyReadonlyArray`.
@@ -585,7 +585,7 @@ export const tailNonEmpty = self => self.slice(1);
585
585
  */
586
586
  export const init = self => {
587
587
  const input = fromIterable(self);
588
- return isNonEmptyReadonlyArray(input) ? O.some(initNonEmpty(input)) : O.none();
588
+ return isNonEmptyReadonlyArray(input) ? Option.some(initNonEmpty(input)) : Option.none();
589
589
  };
590
590
  /**
591
591
  * Get all but the last element of a non empty array, creating a new array.
@@ -776,11 +776,11 @@ export const findFirstIndex = /*#__PURE__*/dual(2, (self, predicate) => {
776
776
  let i = 0;
777
777
  for (const a of self) {
778
778
  if (predicate(a, i)) {
779
- return O.some(i);
779
+ return Option.some(i);
780
780
  }
781
781
  i++;
782
782
  }
783
- return O.none();
783
+ return Option.none();
784
784
  });
785
785
  /**
786
786
  * Return the last index for which a predicate holds.
@@ -801,10 +801,10 @@ export const findLastIndex = /*#__PURE__*/dual(2, (self, predicate) => {
801
801
  const input = fromIterable(self);
802
802
  for (let i = input.length - 1; i >= 0; i--) {
803
803
  if (predicate(input[i], i)) {
804
- return O.some(i);
804
+ return Option.some(i);
805
805
  }
806
806
  }
807
- return O.none();
807
+ return Option.none();
808
808
  });
809
809
  /**
810
810
  * Returns the first element that satisfies the specified
@@ -822,7 +822,7 @@ export const findLastIndex = /*#__PURE__*/dual(2, (self, predicate) => {
822
822
  * @category elements
823
823
  * @since 2.0.0
824
824
  */
825
- export const findFirst = EffectIterable.findFirst;
825
+ export const findFirst = moduleIterable.findFirst;
826
826
  /**
827
827
  * Finds the last element in an iterable collection that satisfies the given predicate or refinement.
828
828
  * Returns an `Option` containing the found element, or `Option.none` if no element matches.
@@ -844,17 +844,17 @@ export const findLast = /*#__PURE__*/dual(2, (self, f) => {
844
844
  for (let i = input.length - 1; i >= 0; i--) {
845
845
  const a = input[i];
846
846
  const o = f(a, i);
847
- if (isBoolean(o)) {
847
+ if (Predicate.isBoolean(o)) {
848
848
  if (o) {
849
- return O.some(a);
849
+ return Option.some(a);
850
850
  }
851
851
  } else {
852
- if (O.isSome(o)) {
852
+ if (Option.isSome(o)) {
853
853
  return o;
854
854
  }
855
855
  }
856
856
  }
857
- return O.none();
857
+ return Option.none();
858
858
  });
859
859
  /**
860
860
  * Insert an element at the specified index, creating a new `NonEmptyArray`,
@@ -875,10 +875,10 @@ export const insertAt = /*#__PURE__*/dual(3, (self, i, b) => {
875
875
  const out = Array.from(self);
876
876
  // v--- `= self.length` is ok, it means inserting in last position
877
877
  if (i < 0 || i > out.length) {
878
- return O.none();
878
+ return Option.none();
879
879
  }
880
880
  out.splice(i, 0, b);
881
- return O.some(out);
881
+ return Option.some(out);
882
882
  });
883
883
  /**
884
884
  * Change the element at the specified index, creating a new `Array`,
@@ -926,7 +926,7 @@ export const replaceOption = /*#__PURE__*/dual(3, (self, i, b) => modifyOption(s
926
926
  *
927
927
  * @since 2.0.0
928
928
  */
929
- export const modify = /*#__PURE__*/dual(3, (self, i, f) => O.getOrElse(modifyOption(self, i, f), () => Array.from(self)));
929
+ export const modify = /*#__PURE__*/dual(3, (self, i, f) => Option.getOrElse(modifyOption(self, i, f), () => Array.from(self)));
930
930
  /**
931
931
  * Apply a function to the element at the specified index, creating a new `Array`,
932
932
  * or return `None` if the index is out of bounds.
@@ -947,14 +947,14 @@ export const modify = /*#__PURE__*/dual(3, (self, i, f) => O.getOrElse(modifyOpt
947
947
  * @since 2.0.0
948
948
  */
949
949
  export const modifyOption = /*#__PURE__*/dual(3, (self, i, f) => {
950
- const out = Array.from(self);
951
- if (isOutOfBound(i, out)) {
952
- return O.none();
950
+ const arr = Array.from(self);
951
+ if (isOutOfBounds(i, arr)) {
952
+ return Option.none();
953
953
  }
954
- const next = f(out[i]);
955
- // @ts-expect-error
956
- out[i] = next;
957
- return O.some(out);
954
+ const out = arr;
955
+ const b = f(arr[i]);
956
+ out[i] = b;
957
+ return Option.some(out);
958
958
  });
959
959
  /**
960
960
  * Delete the element at the specified index, creating a new `Array`,
@@ -977,7 +977,7 @@ export const modifyOption = /*#__PURE__*/dual(3, (self, i, f) => {
977
977
  */
978
978
  export const remove = /*#__PURE__*/dual(2, (self, i) => {
979
979
  const out = Array.from(self);
980
- if (isOutOfBound(i, out)) {
980
+ if (isOutOfBounds(i, out)) {
981
981
  return out;
982
982
  }
983
983
  out.splice(i, 1);
@@ -1267,7 +1267,7 @@ export const rotate = /*#__PURE__*/dual(2, (self, n) => {
1267
1267
  if (isNonEmptyReadonlyArray(input)) {
1268
1268
  const len = input.length;
1269
1269
  const m = Math.round(n) % len;
1270
- if (isOutOfBound(Math.abs(m), input) || m === 0) {
1270
+ if (isOutOfBounds(Math.abs(m), input) || m === 0) {
1271
1271
  return copy(input);
1272
1272
  }
1273
1273
  if (m < 0) {
@@ -1348,7 +1348,7 @@ export const chop = /*#__PURE__*/dual(2, (self, f) => {
1348
1348
  const [b, rest] = f(input);
1349
1349
  const out = [b];
1350
1350
  let next = rest;
1351
- while (readonlyArray.isNonEmptyArray(next)) {
1351
+ while (internalArray.isNonEmptyArray(next)) {
1352
1352
  const [b, rest] = f(next);
1353
1353
  out.push(b);
1354
1354
  next = rest;
@@ -1790,7 +1790,7 @@ export const filterMap = /*#__PURE__*/dual(2, (self, f) => {
1790
1790
  const out = [];
1791
1791
  for (let i = 0; i < as.length; i++) {
1792
1792
  const o = f(as[i], i);
1793
- if (O.isSome(o)) {
1793
+ if (Option.isSome(o)) {
1794
1794
  out.push(o.value);
1795
1795
  }
1796
1796
  }
@@ -1820,7 +1820,7 @@ export const filterMapWhile = /*#__PURE__*/dual(2, (self, f) => {
1820
1820
  const out = [];
1821
1821
  for (const a of self) {
1822
1822
  const b = f(a, i);
1823
- if (O.isSome(b)) {
1823
+ if (Option.isSome(b)) {
1824
1824
  out.push(b.value);
1825
1825
  } else {
1826
1826
  break;
@@ -1861,7 +1861,7 @@ export const partitionMap = /*#__PURE__*/dual(2, (self, f) => {
1861
1861
  const as = fromIterable(self);
1862
1862
  for (let i = 0; i < as.length; i++) {
1863
1863
  const e = f(as[i], i);
1864
- if (E.isLeft(e)) {
1864
+ if (Either.isLeft(e)) {
1865
1865
  left.push(e.left);
1866
1866
  } else {
1867
1867
  right.push(e.right);
@@ -1903,7 +1903,7 @@ export const getSomes = /*#__PURE__*/filterMap(identity);
1903
1903
  export const getLefts = self => {
1904
1904
  const out = [];
1905
1905
  for (const a of self) {
1906
- if (E.isLeft(a)) {
1906
+ if (Either.isLeft(a)) {
1907
1907
  out.push(a.left);
1908
1908
  }
1909
1909
  }
@@ -1927,7 +1927,7 @@ export const getLefts = self => {
1927
1927
  export const getRights = self => {
1928
1928
  const out = [];
1929
1929
  for (const a of self) {
1930
- if (E.isRight(a)) {
1930
+ if (Either.isRight(a)) {
1931
1931
  out.push(a.right);
1932
1932
  }
1933
1933
  }
@@ -2100,7 +2100,7 @@ export const flatMapNullable = /*#__PURE__*/dual(2, (self, f) => flatMap(self, a
2100
2100
  */
2101
2101
  export const liftEither = f => (...a) => {
2102
2102
  const e = f(...a);
2103
- return E.isLeft(e) ? [] : [e.right];
2103
+ return Either.isLeft(e) ? [] : [e.right];
2104
2104
  };
2105
2105
  /**
2106
2106
  * Check if a predicate holds true for every `ReadonlyArray` element.
@@ -2175,7 +2175,7 @@ export const unfold = (b, f) => {
2175
2175
  const out = [];
2176
2176
  let next = b;
2177
2177
  let o;
2178
- while (O.isSome(o = f(next))) {
2178
+ while (Option.isSome(o = f(next))) {
2179
2179
  const [a, b] = o.value;
2180
2180
  out.push(a);
2181
2181
  next = b;
@@ -2274,11 +2274,11 @@ export const dedupe = self => dedupeWith(self, Equal.equivalence());
2274
2274
  */
2275
2275
  export const dedupeAdjacentWith = /*#__PURE__*/dual(2, (self, isEquivalent) => {
2276
2276
  const out = [];
2277
- let lastA = O.none();
2277
+ let lastA = Option.none();
2278
2278
  for (const a of self) {
2279
- if (O.isNone(lastA) || !isEquivalent(a, lastA.value)) {
2279
+ if (Option.isNone(lastA) || !isEquivalent(a, lastA.value)) {
2280
2280
  out.push(a);
2281
- lastA = O.some(a);
2281
+ lastA = Option.some(a);
2282
2282
  }
2283
2283
  }
2284
2284
  return out;
@@ -2472,7 +2472,7 @@ export const Do = /*#__PURE__*/of({});
2472
2472
  * @category do notation
2473
2473
  * @since 3.2.0
2474
2474
  */
2475
- export const bind = /*#__PURE__*/doNotation.bind(map, flatMap);
2475
+ export const bind = /*#__PURE__*/internalDoNotation.bind(map, flatMap);
2476
2476
  /**
2477
2477
  * The "do simulation" for array allows you to sequentially apply operations to the elements of arrays, just as nested loops allow you to go through all combinations of elements in an arrays.
2478
2478
  *
@@ -2520,8 +2520,8 @@ export const bind = /*#__PURE__*/doNotation.bind(map, flatMap);
2520
2520
  * @category do notation
2521
2521
  * @since 3.2.0
2522
2522
  */
2523
- export const bindTo = /*#__PURE__*/doNotation.bindTo(map);
2524
- const let_ = /*#__PURE__*/doNotation.let_(map);
2523
+ export const bindTo = /*#__PURE__*/internalDoNotation.bindTo(map);
2524
+ const let_ = /*#__PURE__*/internalDoNotation.let_(map);
2525
2525
  export {
2526
2526
  /**
2527
2527
  * The "do simulation" for array allows you to sequentially apply operations to the elements of arrays, just as nested loops allow you to go through all combinations of elements in an arrays.