@bifravst/aws-cdk-lambda-helpers 4.0.96 → 5.0.1

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 (744) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +16 -0
  3. package/dist/cdk/TestApp.d.ts +5 -0
  4. package/dist/cdk/TestApp.js +12 -0
  5. package/dist/cdk/TestStack.d.ts +14 -0
  6. package/dist/cdk/TestStack.js +44 -0
  7. package/dist/cdk/baseLayer.d.ts +2 -0
  8. package/dist/cdk/baseLayer.js +7 -0
  9. package/dist/cdk/e2e.js +11 -0
  10. package/dist/cdk/lambda-updated.d.ts +2 -0
  11. package/dist/cdk/lambda-updated.js +4 -0
  12. package/dist/cdk/lambda-with-subpath.d.ts +2 -0
  13. package/dist/cdk/lambda-with-subpath.js +7 -0
  14. package/dist/cdk/lambda.d.ts +2 -0
  15. package/dist/cdk/lambda.js +4 -0
  16. package/dist/cdk/packTestLambdas.d.ts +6 -0
  17. package/dist/cdk/packTestLambdas.js +14 -0
  18. package/dist/cdk/update-lambdas.js +21 -0
  19. package/dist/e2e-updated.spec.js +17 -0
  20. package/dist/e2e.spec.js +27 -0
  21. package/dist/lambdas/test.zip +0 -0
  22. package/dist/lambdas/testAliasImports.zip +0 -0
  23. package/dist/layers/baseLayer/nodejs/node_modules/.package-lock.json +21 -0
  24. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Alt/package.json +6 -0
  25. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Alternative/package.json +6 -0
  26. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Applicative/package.json +6 -0
  27. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Apply/package.json +6 -0
  28. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Array/package.json +6 -0
  29. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Bifunctor/package.json +6 -0
  30. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/BooleanAlgebra/package.json +6 -0
  31. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Bounded/package.json +6 -0
  32. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/BoundedDistributiveLattice/package.json +6 -0
  33. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/BoundedJoinSemilattice/package.json +6 -0
  34. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/BoundedLattice/package.json +6 -0
  35. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/BoundedMeetSemilattice/package.json +6 -0
  36. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/CHANGELOG.md +3375 -0
  37. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Category/package.json +6 -0
  38. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Chain/package.json +6 -0
  39. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ChainRec/package.json +6 -0
  40. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Choice/package.json +6 -0
  41. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Comonad/package.json +6 -0
  42. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Compactable/package.json +6 -0
  43. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Console/package.json +6 -0
  44. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Const/package.json +6 -0
  45. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Contravariant/package.json +6 -0
  46. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Date/package.json +6 -0
  47. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/DistributiveLattice/package.json +6 -0
  48. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Either/package.json +6 -0
  49. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/EitherT/package.json +6 -0
  50. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Endomorphism/package.json +6 -0
  51. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Eq/package.json +6 -0
  52. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Extend/package.json +6 -0
  53. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Field/package.json +6 -0
  54. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Filterable/package.json +6 -0
  55. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FilterableWithIndex/package.json +6 -0
  56. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Foldable/package.json +6 -0
  57. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FoldableWithIndex/package.json +6 -0
  58. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FromEither/package.json +6 -0
  59. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FromIO/package.json +6 -0
  60. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FromReader/package.json +6 -0
  61. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FromState/package.json +6 -0
  62. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FromTask/package.json +6 -0
  63. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FromThese/package.json +6 -0
  64. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Functor/package.json +6 -0
  65. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/FunctorWithIndex/package.json +6 -0
  66. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Group/package.json +6 -0
  67. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/HKT/package.json +6 -0
  68. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/HKT.d.ts +94 -0
  69. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/HeytingAlgebra/package.json +6 -0
  70. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/IO/package.json +6 -0
  71. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/IOEither/package.json +6 -0
  72. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/IOOption/package.json +6 -0
  73. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/IORef/package.json +6 -0
  74. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Identity/package.json +6 -0
  75. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Invariant/package.json +6 -0
  76. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/JoinSemilattice/package.json +6 -0
  77. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Json/package.json +6 -0
  78. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/LICENSE +21 -0
  79. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Lattice/package.json +6 -0
  80. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Magma/package.json +6 -0
  81. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Map/package.json +6 -0
  82. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/MeetSemilattice/package.json +6 -0
  83. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Monad/package.json +6 -0
  84. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/MonadIO/package.json +6 -0
  85. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/MonadTask/package.json +6 -0
  86. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/MonadThrow/package.json +6 -0
  87. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Monoid/package.json +6 -0
  88. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/NaturalTransformation/package.json +6 -0
  89. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/NonEmptyArray/package.json +6 -0
  90. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Option/package.json +6 -0
  91. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/OptionT/package.json +6 -0
  92. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Ord/package.json +6 -0
  93. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Ordering/package.json +6 -0
  94. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Pointed/package.json +6 -0
  95. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Predicate/package.json +6 -0
  96. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Profunctor/package.json +6 -0
  97. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/README.md +110 -0
  98. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Random/package.json +6 -0
  99. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Reader/package.json +6 -0
  100. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReaderEither/package.json +6 -0
  101. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReaderIO/package.json +6 -0
  102. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReaderT/package.json +6 -0
  103. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReaderTask/package.json +6 -0
  104. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReaderTaskEither/package.json +6 -0
  105. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReadonlyArray/package.json +6 -0
  106. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReadonlyMap/package.json +6 -0
  107. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReadonlyNonEmptyArray/package.json +6 -0
  108. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReadonlyRecord/package.json +6 -0
  109. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReadonlySet/package.json +6 -0
  110. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ReadonlyTuple/package.json +6 -0
  111. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Record/package.json +6 -0
  112. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Refinement/package.json +6 -0
  113. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Ring/package.json +6 -0
  114. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Semigroup/package.json +6 -0
  115. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Semigroupoid/package.json +6 -0
  116. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Semiring/package.json +6 -0
  117. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Separated/package.json +6 -0
  118. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Set/package.json +6 -0
  119. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Show/package.json +6 -0
  120. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/State/package.json +6 -0
  121. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/StateReaderTaskEither/package.json +6 -0
  122. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/StateT/package.json +6 -0
  123. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Store/package.json +6 -0
  124. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Strong/package.json +6 -0
  125. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Task/package.json +6 -0
  126. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/TaskEither/package.json +6 -0
  127. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/TaskOption/package.json +6 -0
  128. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/TaskThese/package.json +6 -0
  129. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/These/package.json +6 -0
  130. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/TheseT/package.json +6 -0
  131. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Traced/package.json +6 -0
  132. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Traversable/package.json +6 -0
  133. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/TraversableWithIndex/package.json +6 -0
  134. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Tree/package.json +6 -0
  135. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Tuple/package.json +6 -0
  136. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Unfoldable/package.json +6 -0
  137. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/ValidationT/package.json +6 -0
  138. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Witherable/package.json +6 -0
  139. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Writer/package.json +6 -0
  140. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/WriterT/package.json +6 -0
  141. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/Zero/package.json +6 -0
  142. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/boolean/package.json +6 -0
  143. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Alt.d.ts +86 -0
  144. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Alt.js +3 -0
  145. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Alternative.d.ts +108 -0
  146. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Alternative.js +33 -0
  147. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Applicative.d.ts +267 -0
  148. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Applicative.js +39 -0
  149. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Apply.d.ts +658 -0
  150. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Apply.js +178 -0
  151. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Array.d.ts +2215 -0
  152. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Array.js +2517 -0
  153. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Bifunctor.d.ts +60 -0
  154. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BooleanAlgebra.d.ts +43 -0
  155. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BooleanAlgebra.js +78 -0
  156. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Bounded.d.ts +41 -0
  157. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Bounded.js +51 -0
  158. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedDistributiveLattice.d.ts +20 -0
  159. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedDistributiveLattice.js +17 -0
  160. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedJoinSemilattice.d.ts +15 -0
  161. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedLattice.d.ts +15 -0
  162. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedMeetSemilattice.d.ts +15 -0
  163. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Category.d.ts +33 -0
  164. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Category.js +1 -0
  165. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Chain.d.ts +172 -0
  166. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Chain.js +14 -0
  167. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ChainRec.d.ts +59 -0
  168. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ChainRec.js +10 -0
  169. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Choice.d.ts +174 -0
  170. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Choice.js +16 -0
  171. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Comonad.d.ts +54 -0
  172. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Comonad.js +1 -0
  173. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Compactable.d.ts +320 -0
  174. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Compactable.js +21 -0
  175. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Console.d.ts +20 -0
  176. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Console.js +32 -0
  177. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Const.d.ts +169 -0
  178. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Const.js +176 -0
  179. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Contravariant.d.ts +62 -0
  180. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Contravariant.js +1 -0
  181. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Date.d.ts +49 -0
  182. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Date.js +61 -0
  183. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/DistributiveLattice.d.ts +20 -0
  184. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/DistributiveLattice.js +14 -0
  185. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Either.d.ts +1354 -0
  186. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Either.js +1480 -0
  187. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/EitherT.d.ts +669 -0
  188. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/EitherT.js +137 -0
  189. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Endomorphism.d.ts +40 -0
  190. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Endomorphism.js +28 -0
  191. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Eq.d.ts +206 -0
  192. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Eq.js +214 -0
  193. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Extend.d.ts +54 -0
  194. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Extend.js +1 -0
  195. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Field.d.ts +36 -0
  196. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Field.js +43 -0
  197. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Filterable.d.ts +628 -0
  198. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Filterable.js +52 -0
  199. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FilterableWithIndex.d.ts +255 -0
  200. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FilterableWithIndex.js +1 -0
  201. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Foldable.d.ts +423 -0
  202. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Foldable.js +64 -0
  203. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FoldableWithIndex.d.ts +290 -0
  204. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FoldableWithIndex.js +49 -0
  205. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromEither.d.ts +337 -0
  206. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromEither.js +56 -0
  207. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromIO.d.ts +152 -0
  208. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromIO.js +25 -0
  209. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromReader.d.ts +136 -0
  210. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromReader.js +30 -0
  211. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromState.d.ts +128 -0
  212. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromState.js +21 -0
  213. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromTask.d.ts +144 -0
  214. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromTask.js +25 -0
  215. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromThese.d.ts +73 -0
  216. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FromThese.js +9 -0
  217. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Functor.d.ts +452 -0
  218. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Functor.js +53 -0
  219. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FunctorWithIndex.d.ts +203 -0
  220. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/FunctorWithIndex.js +27 -0
  221. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Group.d.ts +15 -0
  222. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Group.js +1 -0
  223. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/HKT/index.js +6 -0
  224. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/HKT/package.json +3 -0
  225. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/HeytingAlgebra.d.ts +32 -0
  226. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/HeytingAlgebra.js +1 -0
  227. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IO.d.ts +311 -0
  228. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IO.js +340 -0
  229. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IOEither.d.ts +1042 -0
  230. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IOEither.js +1062 -0
  231. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IOOption.d.ts +616 -0
  232. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IOOption.js +626 -0
  233. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IORef.d.ts +37 -0
  234. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/IORef.js +46 -0
  235. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Identity.d.ts +295 -0
  236. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Identity.js +340 -0
  237. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Invariant.d.ts +62 -0
  238. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Invariant.js +1 -0
  239. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/JoinSemilattice.d.ts +19 -0
  240. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/JoinSemilattice.js +13 -0
  241. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Json.d.ts +54 -0
  242. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Json.js +49 -0
  243. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Lattice.d.ts +15 -0
  244. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Lattice.js +1 -0
  245. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Magma.d.ts +58 -0
  246. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Magma.js +75 -0
  247. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Map.d.ts +421 -0
  248. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Map.js +750 -0
  249. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MeetSemilattice.d.ts +19 -0
  250. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MeetSemilattice.js +13 -0
  251. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Monad.d.ts +61 -0
  252. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Monad.js +1 -0
  253. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MonadIO.d.ts +43 -0
  254. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MonadIO.js +1 -0
  255. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MonadTask.d.ts +43 -0
  256. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MonadTask.js +1 -0
  257. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MonadThrow.d.ts +61 -0
  258. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/MonadThrow.js +1 -0
  259. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Monoid.d.ts +268 -0
  260. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Monoid.js +278 -0
  261. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/NaturalTransformation.d.ts +132 -0
  262. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/NaturalTransformation.js +1 -0
  263. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/NonEmptyArray.d.ts +855 -0
  264. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/NonEmptyArray.js +1152 -0
  265. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Option.d.ts +1150 -0
  266. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Option.js +1224 -0
  267. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/OptionT.d.ts +551 -0
  268. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/OptionT.js +94 -0
  269. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Ord.d.ts +355 -0
  270. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Ord.js +429 -0
  271. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Ordering.d.ts +84 -0
  272. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Ordering.js +92 -0
  273. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Pointed.d.ts +62 -0
  274. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Pointed.js +1 -0
  275. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Predicate.d.ts +68 -0
  276. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Predicate.js +84 -0
  277. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Profunctor.d.ts +49 -0
  278. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Profunctor.js +1 -0
  279. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Random.d.ts +36 -0
  280. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Random.js +45 -0
  281. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Reader.d.ts +492 -0
  282. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Reader.js +535 -0
  283. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderEither.d.ts +1057 -0
  284. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderEither.js +956 -0
  285. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderIO.d.ts +499 -0
  286. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderIO.js +472 -0
  287. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderT.d.ts +298 -0
  288. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderT.js +42 -0
  289. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderTask.d.ts +787 -0
  290. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderTask.js +781 -0
  291. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderTaskEither.d.ts +1773 -0
  292. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReaderTaskEither.js +1605 -0
  293. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyArray.d.ts +1716 -0
  294. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyArray.js +2125 -0
  295. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyMap.d.ts +476 -0
  296. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyMap.js +959 -0
  297. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyNonEmptyArray.d.ts +933 -0
  298. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyNonEmptyArray.js +1224 -0
  299. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyRecord.d.ts +1385 -0
  300. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyRecord.js +1365 -0
  301. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlySet.d.ts +258 -0
  302. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlySet.js +448 -0
  303. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyTuple.d.ts +203 -0
  304. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ReadonlyTuple.js +329 -0
  305. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Record.d.ts +1334 -0
  306. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Record.js +1139 -0
  307. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Refinement.d.ts +55 -0
  308. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Refinement.js +73 -0
  309. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Ring.d.ts +53 -0
  310. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Ring.js +76 -0
  311. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Semigroup.d.ts +302 -0
  312. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Semigroup.js +373 -0
  313. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Semigroupoid.d.ts +54 -0
  314. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Semigroupoid.js +1 -0
  315. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Semiring.d.ts +18 -0
  316. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Semiring.js +35 -0
  317. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Separated.d.ts +91 -0
  318. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Separated.js +97 -0
  319. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Set.d.ts +231 -0
  320. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Set.js +387 -0
  321. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Show.d.ts +64 -0
  322. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Show.js +93 -0
  323. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/State.d.ts +291 -0
  324. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/State.js +322 -0
  325. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/StateReaderTaskEither.d.ts +1241 -0
  326. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/StateReaderTaskEither.js +1144 -0
  327. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/StateT.d.ts +313 -0
  328. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/StateT.js +69 -0
  329. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Store.d.ts +117 -0
  330. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Store.js +101 -0
  331. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Strong.d.ts +172 -0
  332. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Strong.js +18 -0
  333. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Task.d.ts +500 -0
  334. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Task.js +592 -0
  335. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TaskEither.d.ts +1437 -0
  336. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TaskEither.js +1464 -0
  337. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TaskOption.d.ts +767 -0
  338. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TaskOption.js +871 -0
  339. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TaskThese.d.ts +401 -0
  340. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TaskThese.js +457 -0
  341. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/These.d.ts +468 -0
  342. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/These.js +663 -0
  343. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TheseT.d.ts +463 -0
  344. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TheseT.js +91 -0
  345. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Traced.d.ts +85 -0
  346. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Traced.js +93 -0
  347. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Traversable.d.ts +550 -0
  348. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Traversable.js +38 -0
  349. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TraversableWithIndex.d.ts +191 -0
  350. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/TraversableWithIndex.js +1 -0
  351. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Tree.d.ts +393 -0
  352. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Tree.js +482 -0
  353. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Tuple.d.ts +198 -0
  354. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Tuple.js +316 -0
  355. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Unfoldable.d.ts +65 -0
  356. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Unfoldable.js +1 -0
  357. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ValidationT.d.ts +73 -0
  358. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/ValidationT.js +21 -0
  359. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Witherable.d.ts +575 -0
  360. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Witherable.js +19 -0
  361. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Writer.d.ts +141 -0
  362. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Writer.js +192 -0
  363. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/WriterT.d.ts +147 -0
  364. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/WriterT.js +59 -0
  365. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Zero.d.ts +83 -0
  366. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Zero.js +3 -0
  367. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/boolean.d.ts +139 -0
  368. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/boolean.js +162 -0
  369. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/function.d.ts +579 -0
  370. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/function.js +345 -0
  371. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/index.d.ts +718 -0
  372. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/index.js +717 -0
  373. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/internal.d.ts +1 -0
  374. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/internal.js +120 -0
  375. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/number.d.ts +99 -0
  376. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/number.js +126 -0
  377. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/pipeable.d.ts +2275 -0
  378. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/pipeable.js +198 -0
  379. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/string.d.ts +226 -0
  380. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/string.js +266 -0
  381. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/struct.d.ts +42 -0
  382. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/struct.js +61 -0
  383. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/void.d.ts +15 -0
  384. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/void.js +17 -0
  385. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/function/package.json +6 -0
  386. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/internal/package.json +6 -0
  387. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Alt.d.ts +86 -0
  388. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Alt.js +6 -0
  389. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Alternative.d.ts +108 -0
  390. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Alternative.js +37 -0
  391. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Applicative.d.ts +267 -0
  392. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Applicative.js +43 -0
  393. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Apply.d.ts +658 -0
  394. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Apply.js +210 -0
  395. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Array.d.ts +2215 -0
  396. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Array.js +2621 -0
  397. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Bifunctor.d.ts +60 -0
  398. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Bifunctor.js +2 -0
  399. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BooleanAlgebra.d.ts +43 -0
  400. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BooleanAlgebra.js +82 -0
  401. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Bounded.d.ts +41 -0
  402. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Bounded.js +79 -0
  403. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedDistributiveLattice.d.ts +20 -0
  404. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedDistributiveLattice.js +20 -0
  405. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedJoinSemilattice.d.ts +15 -0
  406. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedJoinSemilattice.js +2 -0
  407. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedLattice.d.ts +15 -0
  408. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedLattice.js +2 -0
  409. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedMeetSemilattice.d.ts +15 -0
  410. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/BoundedMeetSemilattice.js +2 -0
  411. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Category.d.ts +33 -0
  412. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Category.js +2 -0
  413. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Chain.d.ts +172 -0
  414. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Chain.js +19 -0
  415. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ChainRec.d.ts +59 -0
  416. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ChainRec.js +14 -0
  417. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Choice.d.ts +174 -0
  418. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Choice.js +22 -0
  419. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Comonad.d.ts +54 -0
  420. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Comonad.js +2 -0
  421. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Compactable.d.ts +320 -0
  422. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Compactable.js +49 -0
  423. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Console.d.ts +20 -0
  424. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Console.js +39 -0
  425. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Const.d.ts +169 -0
  426. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Const.js +186 -0
  427. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Contravariant.d.ts +62 -0
  428. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Contravariant.js +2 -0
  429. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Date.d.ts +49 -0
  430. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Date.js +89 -0
  431. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/DistributiveLattice.d.ts +20 -0
  432. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/DistributiveLattice.js +17 -0
  433. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Either.d.ts +1354 -0
  434. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Either.js +1542 -0
  435. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/EitherT.d.ts +669 -0
  436. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/EitherT.js +189 -0
  437. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Endomorphism.d.ts +40 -0
  438. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Endomorphism.js +33 -0
  439. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Eq.d.ts +206 -0
  440. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Eq.js +223 -0
  441. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Extend.d.ts +54 -0
  442. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Extend.js +2 -0
  443. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Field.d.ts +36 -0
  444. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Field.js +48 -0
  445. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Filterable.d.ts +628 -0
  446. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Filterable.js +59 -0
  447. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FilterableWithIndex.d.ts +255 -0
  448. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FilterableWithIndex.js +2 -0
  449. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Foldable.d.ts +423 -0
  450. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Foldable.js +76 -0
  451. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FoldableWithIndex.d.ts +290 -0
  452. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FoldableWithIndex.js +55 -0
  453. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromEither.d.ts +337 -0
  454. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromEither.js +90 -0
  455. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromIO.d.ts +152 -0
  456. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromIO.js +31 -0
  457. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromReader.d.ts +136 -0
  458. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromReader.js +61 -0
  459. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromState.d.ts +128 -0
  460. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromState.js +52 -0
  461. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromTask.d.ts +144 -0
  462. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromTask.js +31 -0
  463. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromThese.d.ts +73 -0
  464. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FromThese.js +12 -0
  465. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Functor.d.ts +452 -0
  466. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Functor.js +57 -0
  467. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FunctorWithIndex.d.ts +203 -0
  468. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/FunctorWithIndex.js +31 -0
  469. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Group.d.ts +15 -0
  470. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Group.js +2 -0
  471. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/HKT/index.js +7 -0
  472. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/HKT/package.json +3 -0
  473. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/HeytingAlgebra.d.ts +32 -0
  474. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/HeytingAlgebra.js +2 -0
  475. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IO.d.ts +311 -0
  476. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IO.js +366 -0
  477. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IOEither.d.ts +1042 -0
  478. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IOEither.js +1102 -0
  479. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IOOption.d.ts +616 -0
  480. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IOOption.js +650 -0
  481. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IORef.d.ts +37 -0
  482. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/IORef.js +50 -0
  483. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Identity.d.ts +295 -0
  484. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Identity.js +370 -0
  485. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Invariant.d.ts +62 -0
  486. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Invariant.js +2 -0
  487. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/JoinSemilattice.d.ts +19 -0
  488. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/JoinSemilattice.js +14 -0
  489. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Json.d.ts +54 -0
  490. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Json.js +54 -0
  491. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Lattice.d.ts +15 -0
  492. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Lattice.js +2 -0
  493. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Magma.d.ts +58 -0
  494. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Magma.js +83 -0
  495. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Map.d.ts +421 -0
  496. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Map.js +814 -0
  497. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MeetSemilattice.d.ts +19 -0
  498. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MeetSemilattice.js +14 -0
  499. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Monad.d.ts +61 -0
  500. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Monad.js +2 -0
  501. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MonadIO.d.ts +43 -0
  502. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MonadIO.js +2 -0
  503. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MonadTask.d.ts +43 -0
  504. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MonadTask.js +2 -0
  505. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MonadThrow.d.ts +61 -0
  506. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/MonadThrow.js +2 -0
  507. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Monoid.d.ts +268 -0
  508. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Monoid.js +311 -0
  509. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/NaturalTransformation.d.ts +132 -0
  510. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/NaturalTransformation.js +2 -0
  511. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/NonEmptyArray.d.ts +855 -0
  512. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/NonEmptyArray.js +1234 -0
  513. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Option.d.ts +1150 -0
  514. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Option.js +1286 -0
  515. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/OptionT.d.ts +551 -0
  516. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/OptionT.js +138 -0
  517. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Ord.d.ts +355 -0
  518. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Ord.js +448 -0
  519. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Ordering.d.ts +84 -0
  520. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Ordering.js +98 -0
  521. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Pointed.d.ts +62 -0
  522. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Pointed.js +2 -0
  523. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Predicate.d.ts +68 -0
  524. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Predicate.js +95 -0
  525. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Profunctor.d.ts +49 -0
  526. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Profunctor.js +2 -0
  527. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Random.d.ts +36 -0
  528. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Random.js +52 -0
  529. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Reader.d.ts +492 -0
  530. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Reader.js +572 -0
  531. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderEither.d.ts +1057 -0
  532. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderEither.js +988 -0
  533. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderIO.d.ts +499 -0
  534. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderIO.js +502 -0
  535. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderT.d.ts +298 -0
  536. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderT.js +52 -0
  537. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderTask.d.ts +787 -0
  538. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderTask.js +811 -0
  539. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderTaskEither.d.ts +1773 -0
  540. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReaderTaskEither.js +1654 -0
  541. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyArray.d.ts +1716 -0
  542. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyArray.js +2253 -0
  543. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyMap.d.ts +476 -0
  544. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyMap.js +1041 -0
  545. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyNonEmptyArray.d.ts +933 -0
  546. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyNonEmptyArray.js +1316 -0
  547. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyRecord.d.ts +1385 -0
  548. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyRecord.js +1470 -0
  549. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlySet.d.ts +258 -0
  550. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlySet.js +485 -0
  551. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyTuple.d.ts +203 -0
  552. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ReadonlyTuple.js +350 -0
  553. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Record.d.ts +1334 -0
  554. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Record.js +1201 -0
  555. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Refinement.d.ts +55 -0
  556. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Refinement.js +107 -0
  557. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Ring.d.ts +53 -0
  558. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Ring.js +81 -0
  559. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Semigroup.d.ts +302 -0
  560. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Semigroup.js +409 -0
  561. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Semigroupoid.d.ts +54 -0
  562. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Semigroupoid.js +2 -0
  563. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Semiring.d.ts +18 -0
  564. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Semiring.js +38 -0
  565. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Separated.d.ts +91 -0
  566. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Separated.js +106 -0
  567. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Set.d.ts +231 -0
  568. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Set.js +436 -0
  569. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Show.d.ts +64 -0
  570. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Show.js +121 -0
  571. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/State.d.ts +291 -0
  572. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/State.js +358 -0
  573. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/StateReaderTaskEither.d.ts +1241 -0
  574. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/StateReaderTaskEither.js +1195 -0
  575. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/StateT.d.ts +313 -0
  576. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/StateT.js +81 -0
  577. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Store.d.ts +117 -0
  578. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Store.js +111 -0
  579. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Strong.d.ts +172 -0
  580. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Strong.js +24 -0
  581. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Task.d.ts +500 -0
  582. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Task.js +627 -0
  583. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TaskEither.d.ts +1437 -0
  584. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TaskEither.js +1510 -0
  585. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TaskOption.d.ts +767 -0
  586. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TaskOption.js +902 -0
  587. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TaskThese.d.ts +401 -0
  588. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TaskThese.js +493 -0
  589. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/These.d.ts +468 -0
  590. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/These.js +724 -0
  591. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TheseT.d.ts +463 -0
  592. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TheseT.js +131 -0
  593. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Traced.d.ts +85 -0
  594. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Traced.js +102 -0
  595. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Traversable.d.ts +550 -0
  596. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Traversable.js +43 -0
  597. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TraversableWithIndex.d.ts +191 -0
  598. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/TraversableWithIndex.js +2 -0
  599. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Tree.d.ts +393 -0
  600. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Tree.js +525 -0
  601. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Tuple.d.ts +198 -0
  602. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Tuple.js +355 -0
  603. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Unfoldable.d.ts +65 -0
  604. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Unfoldable.js +2 -0
  605. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ValidationT.d.ts +73 -0
  606. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/ValidationT.js +47 -0
  607. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Witherable.d.ts +575 -0
  608. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Witherable.js +47 -0
  609. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Writer.d.ts +141 -0
  610. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Writer.js +210 -0
  611. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/WriterT.d.ts +147 -0
  612. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/WriterT.js +62 -0
  613. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Zero.d.ts +83 -0
  614. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/Zero.js +6 -0
  615. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/boolean.d.ts +139 -0
  616. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/boolean.js +167 -0
  617. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/function.d.ts +579 -0
  618. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/function.js +369 -0
  619. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/index.d.ts +718 -0
  620. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/index.js +273 -0
  621. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/internal.d.ts +1 -0
  622. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/internal.js +143 -0
  623. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/number.d.ts +99 -0
  624. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/number.js +130 -0
  625. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/pipeable.d.ts +2275 -0
  626. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/pipeable.js +227 -0
  627. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/string.d.ts +226 -0
  628. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/string.js +283 -0
  629. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/struct.d.ts +42 -0
  630. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/struct.js +89 -0
  631. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/void.d.ts +15 -0
  632. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/lib/void.js +43 -0
  633. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/number/package.json +6 -0
  634. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/package.json +29 -0
  635. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/pipeable/package.json +6 -0
  636. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/string/package.json +6 -0
  637. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/struct/package.json +6 -0
  638. package/dist/layers/baseLayer/nodejs/node_modules/fp-ts/void/package.json +6 -0
  639. package/dist/layers/baseLayer/nodejs/node_modules/id128/CHANGES +20 -0
  640. package/dist/layers/baseLayer/nodejs/node_modules/id128/LICENSE +18 -0
  641. package/dist/layers/baseLayer/nodejs/node_modules/id128/README.md +853 -0
  642. package/dist/layers/baseLayer/nodejs/node_modules/id128/index.d.ts +167 -0
  643. package/dist/layers/baseLayer/nodejs/node_modules/id128/index.js +49 -0
  644. package/dist/layers/baseLayer/nodejs/node_modules/id128/package.json +68 -0
  645. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/coder/base.js +53 -0
  646. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/coder/crockford32.js +114 -0
  647. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/coder/hex.js +63 -0
  648. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/coder/uuid.js +77 -0
  649. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/byte-array.js +26 -0
  650. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/epoch-converter.js +32 -0
  651. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/exception.js +18 -0
  652. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/fake-machine.js +26 -0
  653. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/machine.js +37 -0
  654. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/random-bytes-browser.js +9 -0
  655. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/common/random-bytes.js +17 -0
  656. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/factory/id.js +96 -0
  657. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/factory/versioned-id.js +72 -0
  658. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/base.js +39 -0
  659. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/ulid-monotonic.js +71 -0
  660. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/ulid.js +64 -0
  661. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/uuid-1.js +149 -0
  662. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/uuid-4.js +24 -0
  663. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/uuid-6.js +146 -0
  664. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/uuid-nil.js +33 -0
  665. package/dist/layers/baseLayer/nodejs/node_modules/id128/src/id/uuid.js +58 -0
  666. package/dist/layers/baseLayer/nodejs/node_modules/id128/utils.js +35 -0
  667. package/dist/layers/baseLayer/nodejs/package-lock.json +6702 -0
  668. package/dist/layers/baseLayer/nodejs/package.json +1 -0
  669. package/dist/layers/baseLayer.zip +0 -0
  670. package/dist/package.json +132 -0
  671. package/{npm → dist/src}/IoTActionRole.js +10 -11
  672. package/{npm → dist/src}/LambdaLogGroup.js +11 -5
  673. package/{npm → dist/src}/LambdaSource.js +2 -2
  674. package/{npm → dist/src}/PackedLambdaFn.js +10 -8
  675. package/dist/src/checkSumOfFiles.spec.d.ts +1 -0
  676. package/dist/src/checkSumOfFiles.spec.js +16 -0
  677. package/dist/src/checksumOfFiles.js +40 -0
  678. package/{npm → dist/src}/commonParent.js +5 -3
  679. package/dist/src/commonParent.spec.d.ts +1 -0
  680. package/dist/src/commonParent.spec.js +20 -0
  681. package/{npm → dist/src}/findDependencies.js +49 -32
  682. package/dist/src/findDependencies.spec.d.ts +1 -0
  683. package/{npm → dist/src}/findDependencies.spec.js +8 -8
  684. package/dist/src/isTest.js +1 -0
  685. package/dist/src/isTest.spec.d.ts +1 -0
  686. package/{npm → dist/src}/isTest.spec.js +4 -4
  687. package/dist/src/module-folder-named-like-handler-bug.spec.d.ts +1 -0
  688. package/dist/src/module-folder-named-like-handler-bug.spec.js +19 -0
  689. package/{npm → dist/src}/packLambda.js +40 -43
  690. package/dist/src/packLambda.spec.d.ts +1 -0
  691. package/{npm → dist/src}/packLambda.spec.js +4 -7
  692. package/{npm → dist/src}/packLambdaFromPath.js +7 -9
  693. package/{npm → dist/src}/packLayer.js +29 -29
  694. package/dist/src/packLayer.spec.d.ts +1 -0
  695. package/{npm → dist/src}/packLayer.spec.js +3 -5
  696. package/dist/src/test/getFileFromZip.js +25 -0
  697. package/dist/src/test-data/resolve-paths/foo/1.d.ts +1 -0
  698. package/dist/src/test-data/resolve-paths/foo/1.js +1 -0
  699. package/dist/src/test-data/resolve-paths/foo/2.d.ts +1 -0
  700. package/dist/src/test-data/resolve-paths/foo/2.js +1 -0
  701. package/dist/src/test-data/resolve-paths/foo/index.d.ts +1 -0
  702. package/dist/src/test-data/resolve-paths/foo/index.js +1 -0
  703. package/dist/src/updateImports.js +1 -0
  704. package/dist/src/updateImports.spec.d.ts +1 -0
  705. package/{npm → dist/src}/updateImports.spec.js +3 -3
  706. package/dist/src/updateLambdaCode.js +75 -0
  707. package/package.json +37 -34
  708. package/npm/checkSumOfFiles.spec.js +0 -15
  709. package/npm/checksumOfFiles.js +0 -44
  710. package/npm/commonParent.spec.js +0 -22
  711. package/npm/isTest.js +0 -1
  712. package/npm/module-folder-named-like-handler-bug.spec.js +0 -19
  713. package/npm/updateImports.js +0 -1
  714. package/npm/updateLambdaCode.js +0 -75
  715. /package/{npm/checkSumOfFiles.spec.d.ts → dist/cdk/e2e.d.ts} +0 -0
  716. /package/{npm/commonParent.spec.d.ts → dist/cdk/update-lambdas.d.ts} +0 -0
  717. /package/{npm/findDependencies.spec.d.ts → dist/e2e-updated.spec.d.ts} +0 -0
  718. /package/{npm/isTest.spec.d.ts → dist/e2e.spec.d.ts} +0 -0
  719. /package/{npm/module-folder-named-like-handler-bug.spec.d.ts → dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/Bifunctor.js} +0 -0
  720. /package/{npm/packLambda.spec.d.ts → dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedJoinSemilattice.js} +0 -0
  721. /package/{npm/packLayer.spec.d.ts → dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedLattice.js} +0 -0
  722. /package/{npm/updateImports.spec.d.ts → dist/layers/baseLayer/nodejs/node_modules/fp-ts/es6/BoundedMeetSemilattice.js} +0 -0
  723. /package/{npm → dist/src}/IoTActionRole.d.ts +0 -0
  724. /package/{npm → dist/src}/LambdaLogGroup.d.ts +0 -0
  725. /package/{npm → dist/src}/LambdaSource.d.ts +0 -0
  726. /package/{npm → dist/src}/PackedLambdaFn.d.ts +0 -0
  727. /package/{npm → dist/src}/cdk.d.ts +0 -0
  728. /package/{npm → dist/src}/cdk.js +0 -0
  729. /package/{npm → dist/src}/checksumOfFiles.d.ts +0 -0
  730. /package/{npm → dist/src}/commonParent.d.ts +0 -0
  731. /package/{npm → dist/src}/findDependencies.d.ts +0 -0
  732. /package/{npm → dist/src}/isTest.d.ts +0 -0
  733. /package/{npm → dist/src}/lambda.d.ts +0 -0
  734. /package/{npm → dist/src}/lambda.js +0 -0
  735. /package/{npm → dist/src}/layer.d.ts +0 -0
  736. /package/{npm → dist/src}/layer.js +0 -0
  737. /package/{npm → dist/src}/packLambda.d.ts +0 -0
  738. /package/{npm → dist/src}/packLambdaFromPath.d.ts +0 -0
  739. /package/{npm → dist/src}/packLayer.d.ts +0 -0
  740. /package/{npm → dist/src}/test/getFileFromZip.d.ts +0 -0
  741. /package/{npm → dist/src}/updateImports.d.ts +0 -0
  742. /package/{npm → dist/src}/updateLambdaCode.d.ts +0 -0
  743. /package/{npm → dist/src}/util.d.ts +0 -0
  744. /package/{npm → dist/src}/util.js +0 -0
@@ -0,0 +1,2253 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
26
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
27
+ if (ar || !(i in from)) {
28
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
29
+ ar[i] = from[i];
30
+ }
31
+ }
32
+ return to.concat(ar || Array.prototype.slice.call(from));
33
+ };
34
+ Object.defineProperty(exports, "__esModule", { value: true });
35
+ exports.sortBy = exports.uniq = exports.rotate = exports.intersperse = exports.prependAll = exports.unzip = exports.zipWith = exports.sort = exports.lefts = exports.rights = exports.reverse = exports.modifyAt = exports.deleteAt = exports.updateAt = exports.insertAt = exports.findLastIndex = exports.findLastMap = exports.findFirstMap = exports.findIndex = exports.dropRight = exports.dropLeft = exports.takeRight = exports.takeLeft = exports.init = exports.tail = exports.last = exports.head = exports.isOutOfBound = exports.size = exports.scanRight = exports.scanLeft = exports.chainWithIndex = exports.foldRight = exports.matchRight = exports.matchRightW = exports.foldLeft = exports.matchLeft = exports.matchLeftW = exports.match = exports.matchW = exports.fromEither = exports.fromOption = exports.replicate = exports.makeBy = exports.appendW = exports.append = exports.prependW = exports.prepend = exports.isNonEmpty = exports.isEmpty = void 0;
36
+ exports.getIntersectionSemigroup = exports.getUnionMonoid = exports.getUnionSemigroup = exports.getOrd = exports.getEq = exports.getMonoid = exports.getSemigroup = exports.getShow = exports.URI = exports.unfold = exports.wilt = exports.wither = exports.traverseWithIndex = exports.sequence = exports.traverse = exports.reduceRightWithIndex = exports.reduceRight = exports.reduceWithIndex = exports.foldMap = exports.reduce = exports.foldMapWithIndex = exports.duplicate = exports.extend = exports.filterWithIndex = exports.partitionMapWithIndex = exports.partitionMap = exports.partitionWithIndex = exports.partition = exports.compact = exports.filterMap = exports.filterMapWithIndex = exports.filter = exports.separate = exports.mapWithIndex = exports.map = exports.flatten = exports.flatMap = exports.ap = exports.alt = exports.altW = exports.zero = exports.of = exports._chainRecBreadthFirst = exports._chainRecDepthFirst = exports.concat = exports.concatW = exports.fromOptionK = exports.chunksOf = exports.splitAt = exports.chop = void 0;
37
+ exports.cons = exports.range = exports.chain = exports.apS = exports.bind = exports.let = exports.bindTo = exports.Do = exports.intercalate = exports.exists = exports.some = exports.empty = exports.fromArray = exports.toArray = exports.unsafeDeleteAt = exports.unsafeUpdateAt = exports.unsafeInsertAt = exports.fromEitherK = exports.FromEither = exports.filterE = exports.Witherable = exports.ChainRecBreadthFirst = exports.chainRecBreadthFirst = exports.ChainRecDepthFirst = exports.chainRecDepthFirst = exports.TraversableWithIndex = exports.Traversable = exports.FoldableWithIndex = exports.Foldable = exports.FilterableWithIndex = exports.Filterable = exports.Compactable = exports.Extend = exports.Alternative = exports.guard = exports.Zero = exports.Alt = exports.Unfoldable = exports.chainFirst = exports.Monad = exports.Chain = exports.Applicative = exports.apSecond = exports.apFirst = exports.Apply = exports.FunctorWithIndex = exports.Pointed = exports.flap = exports.Functor = exports.getDifferenceMagma = void 0;
38
+ exports.readonlyArray = exports.prependToAll = exports.snoc = void 0;
39
+ exports.fromPredicate = fromPredicate;
40
+ exports.lookup = lookup;
41
+ exports.takeLeftWhile = takeLeftWhile;
42
+ exports.spanLeft = spanLeft;
43
+ exports.dropLeftWhile = dropLeftWhile;
44
+ exports.findFirst = findFirst;
45
+ exports.findLast = findLast;
46
+ exports.zip = zip;
47
+ exports.elem = elem;
48
+ exports.comprehension = comprehension;
49
+ exports.union = union;
50
+ exports.intersection = intersection;
51
+ exports.difference = difference;
52
+ exports.every = every;
53
+ var Apply_1 = require("./Apply");
54
+ var Chain_1 = require("./Chain");
55
+ var Eq_1 = require("./Eq");
56
+ var FromEither_1 = require("./FromEither");
57
+ var function_1 = require("./function");
58
+ var Functor_1 = require("./Functor");
59
+ var _ = __importStar(require("./internal"));
60
+ var N = __importStar(require("./number"));
61
+ var Ord_1 = require("./Ord");
62
+ var RNEA = __importStar(require("./ReadonlyNonEmptyArray"));
63
+ var Separated_1 = require("./Separated");
64
+ var Witherable_1 = require("./Witherable");
65
+ var Zero_1 = require("./Zero");
66
+ // -------------------------------------------------------------------------------------
67
+ // refinements
68
+ // -------------------------------------------------------------------------------------
69
+ /**
70
+ * Test whether a `ReadonlyArray` is empty.
71
+ *
72
+ * @example
73
+ * import { isEmpty } from 'fp-ts/ReadonlyArray'
74
+ *
75
+ * assert.strictEqual(isEmpty([]), true)
76
+ *
77
+ * @category refinements
78
+ * @since 2.5.0
79
+ */
80
+ var isEmpty = function (as) { return as.length === 0; };
81
+ exports.isEmpty = isEmpty;
82
+ /**
83
+ * Test whether a `ReadonlyArray` is non empty.
84
+ *
85
+ * @category refinements
86
+ * @since 2.5.0
87
+ */
88
+ exports.isNonEmpty = RNEA.isNonEmpty;
89
+ // -------------------------------------------------------------------------------------
90
+ // constructors
91
+ // -------------------------------------------------------------------------------------
92
+ /**
93
+ * Prepend an element to the front of a `ReadonlyArray`, creating a new `ReadonlyNonEmptyArray`.
94
+ *
95
+ * @example
96
+ * import { prepend } from 'fp-ts/ReadonlyArray'
97
+ * import { pipe } from 'fp-ts/function'
98
+ *
99
+ * assert.deepStrictEqual(pipe([2, 3, 4], prepend(1)), [1, 2, 3, 4])
100
+ *
101
+ * @since 2.10.0
102
+ */
103
+ exports.prepend = RNEA.prepend;
104
+ /**
105
+ * Less strict version of [`prepend`](#prepend).
106
+ *
107
+ * @since 2.11.0
108
+ */
109
+ exports.prependW = RNEA.prependW;
110
+ /**
111
+ * Append an element to the end of a `ReadonlyArray`, creating a new `ReadonlyNonEmptyArray`.
112
+ *
113
+ * @example
114
+ * import { append } from 'fp-ts/ReadonlyArray'
115
+ * import { pipe } from 'fp-ts/function'
116
+ *
117
+ * assert.deepStrictEqual(pipe([1, 2, 3], append(4)), [1, 2, 3, 4])
118
+ *
119
+ * @since 2.10.0
120
+ */
121
+ exports.append = RNEA.append;
122
+ /**
123
+ * Less strict version of [`append`](#append).
124
+ *
125
+ * @since 2.11.0
126
+ */
127
+ exports.appendW = RNEA.appendW;
128
+ /**
129
+ * Return a `ReadonlyArray` of length `n` with element `i` initialized with `f(i)`.
130
+ *
131
+ * **Note**. `n` is normalized to a non negative integer.
132
+ *
133
+ * @example
134
+ * import { makeBy } from 'fp-ts/ReadonlyArray'
135
+ *
136
+ * const double = (n: number): number => n * 2
137
+ * assert.deepStrictEqual(makeBy(5, double), [0, 2, 4, 6, 8])
138
+ *
139
+ * @category constructors
140
+ * @since 2.5.0
141
+ */
142
+ var makeBy = function (n, f) { return (n <= 0 ? exports.empty : RNEA.makeBy(f)(n)); };
143
+ exports.makeBy = makeBy;
144
+ /**
145
+ * Create a `ReadonlyArray` containing a value repeated the specified number of times.
146
+ *
147
+ * **Note**. `n` is normalized to a non negative integer.
148
+ *
149
+ * @example
150
+ * import { replicate } from 'fp-ts/ReadonlyArray'
151
+ *
152
+ * assert.deepStrictEqual(replicate(3, 'a'), ['a', 'a', 'a'])
153
+ *
154
+ * @category constructors
155
+ * @since 2.5.0
156
+ */
157
+ var replicate = function (n, a) { return (0, exports.makeBy)(n, function () { return a; }); };
158
+ exports.replicate = replicate;
159
+ function fromPredicate(predicate) {
160
+ return function (a) { return (predicate(a) ? [a] : exports.empty); };
161
+ }
162
+ // -------------------------------------------------------------------------------------
163
+ // conversions
164
+ // -------------------------------------------------------------------------------------
165
+ /**
166
+ * @category conversions
167
+ * @since 2.11.0
168
+ */
169
+ var fromOption = function (ma) { return (_.isNone(ma) ? exports.empty : [ma.value]); };
170
+ exports.fromOption = fromOption;
171
+ /**
172
+ * Transforms an `Either` to a `ReadonlyArray`.
173
+ *
174
+ * @category conversions
175
+ * @since 2.11.0
176
+ */
177
+ var fromEither = function (e) { return (_.isLeft(e) ? exports.empty : [e.right]); };
178
+ exports.fromEither = fromEither;
179
+ /**
180
+ * Less strict version of [`match`](#match).
181
+ *
182
+ * The `W` suffix (short for **W**idening) means that the handler return types will be merged.
183
+ *
184
+ * @category pattern matching
185
+ * @since 2.11.0
186
+ */
187
+ var matchW = function (onEmpty, onNonEmpty) {
188
+ return function (as) {
189
+ return (0, exports.isNonEmpty)(as) ? onNonEmpty(as) : onEmpty();
190
+ };
191
+ };
192
+ exports.matchW = matchW;
193
+ /**
194
+ * @category pattern matching
195
+ * @since 2.11.0
196
+ */
197
+ exports.match = exports.matchW;
198
+ /**
199
+ * Less strict version of [`matchLeft`](#matchleft).
200
+ *
201
+ * @category pattern matching
202
+ * @since 2.11.0
203
+ */
204
+ var matchLeftW = function (onEmpty, onNonEmpty) {
205
+ return function (as) {
206
+ return (0, exports.isNonEmpty)(as) ? onNonEmpty(RNEA.head(as), RNEA.tail(as)) : onEmpty();
207
+ };
208
+ };
209
+ exports.matchLeftW = matchLeftW;
210
+ /**
211
+ * Break a `ReadonlyArray` into its first element and remaining elements.
212
+ *
213
+ * @example
214
+ * import { matchLeft } from 'fp-ts/ReadonlyArray'
215
+ *
216
+ * const len: <A>(as: ReadonlyArray<A>) => number = matchLeft(() => 0, (_, tail) => 1 + len(tail))
217
+ * assert.strictEqual(len([1, 2, 3]), 3)
218
+ *
219
+ * @category pattern matching
220
+ * @since 2.10.0
221
+ */
222
+ exports.matchLeft = exports.matchLeftW;
223
+ /**
224
+ * Alias of [`matchLeft`](#matchleft).
225
+ *
226
+ * @category pattern matching
227
+ * @since 2.5.0
228
+ */
229
+ exports.foldLeft = exports.matchLeft;
230
+ /**
231
+ * Less strict version of [`matchRight`](#matchright).
232
+ *
233
+ * @category pattern matching
234
+ * @since 2.11.0
235
+ */
236
+ var matchRightW = function (onEmpty, onNonEmpty) {
237
+ return function (as) {
238
+ return (0, exports.isNonEmpty)(as) ? onNonEmpty(RNEA.init(as), RNEA.last(as)) : onEmpty();
239
+ };
240
+ };
241
+ exports.matchRightW = matchRightW;
242
+ /**
243
+ * Break a `ReadonlyArray` into its initial elements and the last element.
244
+ *
245
+ * @category pattern matching
246
+ * @since 2.10.0
247
+ */
248
+ exports.matchRight = exports.matchRightW;
249
+ /**
250
+ * Alias of [`matchRight`](#matchright).
251
+ *
252
+ * @category pattern matching
253
+ * @since 2.5.0
254
+ */
255
+ exports.foldRight = exports.matchRight;
256
+ // -------------------------------------------------------------------------------------
257
+ // combinators
258
+ // -------------------------------------------------------------------------------------
259
+ /**
260
+ * @category sequencing
261
+ * @since 2.7.0
262
+ */
263
+ var chainWithIndex = function (f) {
264
+ return function (as) {
265
+ if ((0, exports.isEmpty)(as)) {
266
+ return exports.empty;
267
+ }
268
+ var out = [];
269
+ for (var i = 0; i < as.length; i++) {
270
+ var bs = f(i, as[i]);
271
+ for (var j = 0; j < bs.length; j++) {
272
+ out.push(bs[j]);
273
+ }
274
+ }
275
+ return out;
276
+ };
277
+ };
278
+ exports.chainWithIndex = chainWithIndex;
279
+ /**
280
+ * Same as `reduce` but it carries over the intermediate steps.
281
+ *
282
+ * @example
283
+ * import { scanLeft } from 'fp-ts/ReadonlyArray'
284
+ *
285
+ * assert.deepStrictEqual(scanLeft(10, (b, a: number) => b - a)([1, 2, 3]), [10, 9, 7, 4])
286
+ *
287
+ * @since 2.5.0
288
+ */
289
+ var scanLeft = function (b, f) {
290
+ return function (as) {
291
+ var len = as.length;
292
+ var out = new Array(len + 1);
293
+ out[0] = b;
294
+ for (var i = 0; i < len; i++) {
295
+ out[i + 1] = f(out[i], as[i]);
296
+ }
297
+ return out;
298
+ };
299
+ };
300
+ exports.scanLeft = scanLeft;
301
+ /**
302
+ * Fold an array from the right, keeping all intermediate results instead of only the final result
303
+ *
304
+ * @example
305
+ * import { scanRight } from 'fp-ts/ReadonlyArray'
306
+ *
307
+ * assert.deepStrictEqual(scanRight(10, (a: number, b) => b - a)([1, 2, 3]), [4, 5, 7, 10])
308
+ *
309
+ * @since 2.5.0
310
+ */
311
+ var scanRight = function (b, f) {
312
+ return function (as) {
313
+ var len = as.length;
314
+ var out = new Array(len + 1);
315
+ out[len] = b;
316
+ for (var i = len - 1; i >= 0; i--) {
317
+ out[i] = f(as[i], out[i + 1]);
318
+ }
319
+ return out;
320
+ };
321
+ };
322
+ exports.scanRight = scanRight;
323
+ /**
324
+ * Calculate the number of elements in a `ReadonlyArray`.
325
+ *
326
+ * @since 2.10.0
327
+ */
328
+ var size = function (as) { return as.length; };
329
+ exports.size = size;
330
+ /**
331
+ * Test whether an array contains a particular index
332
+ *
333
+ * @since 2.5.0
334
+ */
335
+ exports.isOutOfBound = RNEA.isOutOfBound;
336
+ function lookup(i, as) {
337
+ return as === undefined ? function (as) { return lookup(i, as); } : (0, exports.isOutOfBound)(i, as) ? _.none : _.some(as[i]);
338
+ }
339
+ /**
340
+ * Get the first element in an array, or `None` if the array is empty
341
+ *
342
+ * @example
343
+ * import { head } from 'fp-ts/ReadonlyArray'
344
+ * import { some, none } from 'fp-ts/Option'
345
+ *
346
+ * assert.deepStrictEqual(head([1, 2, 3]), some(1))
347
+ * assert.deepStrictEqual(head([]), none)
348
+ *
349
+ * @since 2.5.0
350
+ */
351
+ var head = function (as) { return ((0, exports.isNonEmpty)(as) ? _.some(RNEA.head(as)) : _.none); };
352
+ exports.head = head;
353
+ /**
354
+ * Get the last element in an array, or `None` if the array is empty
355
+ *
356
+ * @example
357
+ * import { last } from 'fp-ts/ReadonlyArray'
358
+ * import { some, none } from 'fp-ts/Option'
359
+ *
360
+ * assert.deepStrictEqual(last([1, 2, 3]), some(3))
361
+ * assert.deepStrictEqual(last([]), none)
362
+ *
363
+ * @since 2.5.0
364
+ */
365
+ var last = function (as) { return ((0, exports.isNonEmpty)(as) ? _.some(RNEA.last(as)) : _.none); };
366
+ exports.last = last;
367
+ /**
368
+ * Get all but the first element of an array, creating a new array, or `None` if the array is empty
369
+ *
370
+ * @example
371
+ * import { tail } from 'fp-ts/ReadonlyArray'
372
+ * import { some, none } from 'fp-ts/Option'
373
+ *
374
+ * assert.deepStrictEqual(tail([1, 2, 3]), some([2, 3]))
375
+ * assert.deepStrictEqual(tail([]), none)
376
+ *
377
+ * @since 2.5.0
378
+ */
379
+ var tail = function (as) {
380
+ return (0, exports.isNonEmpty)(as) ? _.some(RNEA.tail(as)) : _.none;
381
+ };
382
+ exports.tail = tail;
383
+ /**
384
+ * Get all but the last element of an array, creating a new array, or `None` if the array is empty
385
+ *
386
+ * @example
387
+ * import { init } from 'fp-ts/ReadonlyArray'
388
+ * import { some, none } from 'fp-ts/Option'
389
+ *
390
+ * assert.deepStrictEqual(init([1, 2, 3]), some([1, 2]))
391
+ * assert.deepStrictEqual(init([]), none)
392
+ *
393
+ * @since 2.5.0
394
+ */
395
+ var init = function (as) {
396
+ return (0, exports.isNonEmpty)(as) ? _.some(RNEA.init(as)) : _.none;
397
+ };
398
+ exports.init = init;
399
+ /**
400
+ * Keep only a max number of elements from the start of an `ReadonlyArray`, creating a new `ReadonlyArray`.
401
+ *
402
+ * **Note**. `n` is normalized to a non negative integer.
403
+ *
404
+ * @example
405
+ * import * as RA from 'fp-ts/ReadonlyArray'
406
+ * import { pipe } from 'fp-ts/function'
407
+ *
408
+ * const input: ReadonlyArray<number> = [1, 2, 3]
409
+ * assert.deepStrictEqual(pipe(input, RA.takeLeft(2)), [1, 2])
410
+ *
411
+ * // out of bounds
412
+ * assert.strictEqual(pipe(input, RA.takeLeft(4)), input)
413
+ * assert.strictEqual(pipe(input, RA.takeLeft(-1)), input)
414
+ *
415
+ * @since 2.5.0
416
+ */
417
+ var takeLeft = function (n) {
418
+ return function (as) {
419
+ return (0, exports.isOutOfBound)(n, as) ? as : n === 0 ? exports.empty : as.slice(0, n);
420
+ };
421
+ };
422
+ exports.takeLeft = takeLeft;
423
+ /**
424
+ * Keep only a max number of elements from the end of an `ReadonlyArray`, creating a new `ReadonlyArray`.
425
+ *
426
+ * **Note**. `n` is normalized to a non negative integer.
427
+ *
428
+ * @example
429
+ * import * as RA from 'fp-ts/ReadonlyArray'
430
+ * import { pipe } from 'fp-ts/function'
431
+ *
432
+ * const input: ReadonlyArray<number> = [1, 2, 3]
433
+ * assert.deepStrictEqual(pipe(input, RA.takeRight(2)), [2, 3])
434
+ *
435
+ * // out of bounds
436
+ * assert.strictEqual(pipe(input, RA.takeRight(4)), input)
437
+ * assert.strictEqual(pipe(input, RA.takeRight(-1)), input)
438
+ *
439
+ * @since 2.5.0
440
+ */
441
+ var takeRight = function (n) {
442
+ return function (as) {
443
+ return (0, exports.isOutOfBound)(n, as) ? as : n === 0 ? exports.empty : as.slice(-n);
444
+ };
445
+ };
446
+ exports.takeRight = takeRight;
447
+ function takeLeftWhile(predicate) {
448
+ return function (as) {
449
+ var out = [];
450
+ for (var _i = 0, as_1 = as; _i < as_1.length; _i++) {
451
+ var a = as_1[_i];
452
+ if (!predicate(a)) {
453
+ break;
454
+ }
455
+ out.push(a);
456
+ }
457
+ var len = out.length;
458
+ return len === as.length ? as : len === 0 ? exports.empty : out;
459
+ };
460
+ }
461
+ var spanLeftIndex = function (as, predicate) {
462
+ var l = as.length;
463
+ var i = 0;
464
+ for (; i < l; i++) {
465
+ if (!predicate(as[i])) {
466
+ break;
467
+ }
468
+ }
469
+ return i;
470
+ };
471
+ function spanLeft(predicate) {
472
+ return function (as) {
473
+ var _a = (0, exports.splitAt)(spanLeftIndex(as, predicate))(as), init = _a[0], rest = _a[1];
474
+ return { init: init, rest: rest };
475
+ };
476
+ }
477
+ /**
478
+ * Drop a max number of elements from the start of an `ReadonlyArray`, creating a new `ReadonlyArray`.
479
+ *
480
+ * **Note**. `n` is normalized to a non negative integer.
481
+ *
482
+ * @example
483
+ * import * as RA from 'fp-ts/ReadonlyArray'
484
+ * import { pipe } from 'fp-ts/function'
485
+ *
486
+ * const input: ReadonlyArray<number> = [1, 2, 3]
487
+ * assert.deepStrictEqual(pipe(input, RA.dropLeft(2)), [3])
488
+ * assert.strictEqual(pipe(input, RA.dropLeft(0)), input)
489
+ * assert.strictEqual(pipe(input, RA.dropLeft(-1)), input)
490
+ *
491
+ * @since 2.5.0
492
+ */
493
+ var dropLeft = function (n) {
494
+ return function (as) {
495
+ return n <= 0 || (0, exports.isEmpty)(as) ? as : n >= as.length ? exports.empty : as.slice(n, as.length);
496
+ };
497
+ };
498
+ exports.dropLeft = dropLeft;
499
+ /**
500
+ * Drop a max number of elements from the end of an `ReadonlyArray`, creating a new `ReadonlyArray`.
501
+ *
502
+ * **Note**. `n` is normalized to a non negative integer.
503
+ *
504
+ * @example
505
+ * import * as RA from 'fp-ts/ReadonlyArray'
506
+ * import { pipe } from 'fp-ts/function'
507
+ *
508
+ * const input: ReadonlyArray<number> = [1, 2, 3]
509
+ * assert.deepStrictEqual(pipe(input, RA.dropRight(2)), [1])
510
+ * assert.strictEqual(pipe(input, RA.dropRight(0)), input)
511
+ * assert.strictEqual(pipe(input, RA.dropRight(-1)), input)
512
+ *
513
+ * @since 2.5.0
514
+ */
515
+ var dropRight = function (n) {
516
+ return function (as) {
517
+ return n <= 0 || (0, exports.isEmpty)(as) ? as : n >= as.length ? exports.empty : as.slice(0, as.length - n);
518
+ };
519
+ };
520
+ exports.dropRight = dropRight;
521
+ function dropLeftWhile(predicate) {
522
+ return function (as) {
523
+ var i = spanLeftIndex(as, predicate);
524
+ return i === 0 ? as : i === as.length ? exports.empty : as.slice(i);
525
+ };
526
+ }
527
+ /**
528
+ * Find the first index for which a predicate holds
529
+ *
530
+ * @example
531
+ * import { findIndex } from 'fp-ts/ReadonlyArray'
532
+ * import { some, none } from 'fp-ts/Option'
533
+ *
534
+ * assert.deepStrictEqual(findIndex((n: number) => n === 2)([1, 2, 3]), some(1))
535
+ * assert.deepStrictEqual(findIndex((n: number) => n === 2)([]), none)
536
+ *
537
+ * @since 2.5.0
538
+ */
539
+ var findIndex = function (predicate) {
540
+ return function (as) {
541
+ for (var i = 0; i < as.length; i++) {
542
+ if (predicate(as[i])) {
543
+ return _.some(i);
544
+ }
545
+ }
546
+ return _.none;
547
+ };
548
+ };
549
+ exports.findIndex = findIndex;
550
+ function findFirst(predicate) {
551
+ return function (as) {
552
+ for (var i = 0; i < as.length; i++) {
553
+ if (predicate(as[i])) {
554
+ return _.some(as[i]);
555
+ }
556
+ }
557
+ return _.none;
558
+ };
559
+ }
560
+ /**
561
+ * Find the first element returned by an option based selector function
562
+ *
563
+ * @example
564
+ * import { findFirstMap } from 'fp-ts/ReadonlyArray'
565
+ * import { some, none } from 'fp-ts/Option'
566
+ *
567
+ * interface Person {
568
+ * readonly name: string
569
+ * readonly age?: number
570
+ * }
571
+ *
572
+ * const persons: ReadonlyArray<Person> = [{ name: 'John' }, { name: 'Mary', age: 45 }, { name: 'Joey', age: 28 }]
573
+ *
574
+ * // returns the name of the first person that has an age
575
+ * assert.deepStrictEqual(findFirstMap((p: Person) => (p.age === undefined ? none : some(p.name)))(persons), some('Mary'))
576
+ *
577
+ * @since 2.5.0
578
+ */
579
+ var findFirstMap = function (f) {
580
+ return function (as) {
581
+ for (var i = 0; i < as.length; i++) {
582
+ var out = f(as[i]);
583
+ if (_.isSome(out)) {
584
+ return out;
585
+ }
586
+ }
587
+ return _.none;
588
+ };
589
+ };
590
+ exports.findFirstMap = findFirstMap;
591
+ function findLast(predicate) {
592
+ return function (as) {
593
+ for (var i = as.length - 1; i >= 0; i--) {
594
+ if (predicate(as[i])) {
595
+ return _.some(as[i]);
596
+ }
597
+ }
598
+ return _.none;
599
+ };
600
+ }
601
+ /**
602
+ * Find the last element returned by an option based selector function
603
+ *
604
+ * @example
605
+ * import { findLastMap } from 'fp-ts/ReadonlyArray'
606
+ * import { some, none } from 'fp-ts/Option'
607
+ *
608
+ * interface Person {
609
+ * readonly name: string
610
+ * readonly age?: number
611
+ * }
612
+ *
613
+ * const persons: ReadonlyArray<Person> = [{ name: 'John' }, { name: 'Mary', age: 45 }, { name: 'Joey', age: 28 }]
614
+ *
615
+ * // returns the name of the last person that has an age
616
+ * assert.deepStrictEqual(findLastMap((p: Person) => (p.age === undefined ? none : some(p.name)))(persons), some('Joey'))
617
+ *
618
+ * @since 2.5.0
619
+ */
620
+ var findLastMap = function (f) {
621
+ return function (as) {
622
+ for (var i = as.length - 1; i >= 0; i--) {
623
+ var out = f(as[i]);
624
+ if (_.isSome(out)) {
625
+ return out;
626
+ }
627
+ }
628
+ return _.none;
629
+ };
630
+ };
631
+ exports.findLastMap = findLastMap;
632
+ /**
633
+ * Returns the index of the last element of the list which matches the predicate
634
+ *
635
+ * @example
636
+ * import { findLastIndex } from 'fp-ts/ReadonlyArray'
637
+ * import { some, none } from 'fp-ts/Option'
638
+ *
639
+ * interface X {
640
+ * readonly a: number
641
+ * readonly b: number
642
+ * }
643
+ * const xs: ReadonlyArray<X> = [{ a: 1, b: 0 }, { a: 1, b: 1 }]
644
+ * assert.deepStrictEqual(findLastIndex((x: { readonly a: number }) => x.a === 1)(xs), some(1))
645
+ * assert.deepStrictEqual(findLastIndex((x: { readonly a: number }) => x.a === 4)(xs), none)
646
+ *
647
+ *
648
+ * @since 2.5.0
649
+ */
650
+ var findLastIndex = function (predicate) {
651
+ return function (as) {
652
+ for (var i = as.length - 1; i >= 0; i--) {
653
+ if (predicate(as[i])) {
654
+ return _.some(i);
655
+ }
656
+ }
657
+ return _.none;
658
+ };
659
+ };
660
+ exports.findLastIndex = findLastIndex;
661
+ /**
662
+ * Insert an element at the specified index, creating a new array, or returning `None` if the index is out of bounds
663
+ *
664
+ * @example
665
+ * import { insertAt } from 'fp-ts/ReadonlyArray'
666
+ * import { some } from 'fp-ts/Option'
667
+ *
668
+ * assert.deepStrictEqual(insertAt(2, 5)([1, 2, 3, 4]), some([1, 2, 5, 3, 4]))
669
+ *
670
+ * @since 2.5.0
671
+ */
672
+ var insertAt = function (i, a) {
673
+ return function (as) {
674
+ return i < 0 || i > as.length ? _.none : _.some(RNEA.unsafeInsertAt(i, a, as));
675
+ };
676
+ };
677
+ exports.insertAt = insertAt;
678
+ /**
679
+ * Change the element at the specified index, creating a new array, or returning `None` if the index is out of bounds
680
+ *
681
+ * @example
682
+ * import { updateAt } from 'fp-ts/ReadonlyArray'
683
+ * import { some, none } from 'fp-ts/Option'
684
+ *
685
+ * assert.deepStrictEqual(updateAt(1, 1)([1, 2, 3]), some([1, 1, 3]))
686
+ * assert.deepStrictEqual(updateAt(1, 1)([]), none)
687
+ *
688
+ * @since 2.5.0
689
+ */
690
+ var updateAt = function (i, a) {
691
+ return (0, exports.modifyAt)(i, function () { return a; });
692
+ };
693
+ exports.updateAt = updateAt;
694
+ /**
695
+ * Delete the element at the specified index, creating a new array, or returning `None` if the index is out of bounds
696
+ *
697
+ * @example
698
+ * import { deleteAt } from 'fp-ts/ReadonlyArray'
699
+ * import { some, none } from 'fp-ts/Option'
700
+ *
701
+ * assert.deepStrictEqual(deleteAt(0)([1, 2, 3]), some([2, 3]))
702
+ * assert.deepStrictEqual(deleteAt(1)([]), none)
703
+ *
704
+ * @since 2.5.0
705
+ */
706
+ var deleteAt = function (i) {
707
+ return function (as) {
708
+ return (0, exports.isOutOfBound)(i, as) ? _.none : _.some((0, exports.unsafeDeleteAt)(i, as));
709
+ };
710
+ };
711
+ exports.deleteAt = deleteAt;
712
+ /**
713
+ * Apply a function to the element at the specified index, creating a new array, or returning `None` if the index is out
714
+ * of bounds
715
+ *
716
+ * @example
717
+ * import { modifyAt } from 'fp-ts/ReadonlyArray'
718
+ * import { some, none } from 'fp-ts/Option'
719
+ *
720
+ * const double = (x: number): number => x * 2
721
+ * assert.deepStrictEqual(modifyAt(1, double)([1, 2, 3]), some([1, 4, 3]))
722
+ * assert.deepStrictEqual(modifyAt(1, double)([]), none)
723
+ *
724
+ * @since 2.5.0
725
+ */
726
+ var modifyAt = function (i, f) {
727
+ return function (as) {
728
+ return (0, exports.isOutOfBound)(i, as) ? _.none : _.some((0, exports.unsafeUpdateAt)(i, f(as[i]), as));
729
+ };
730
+ };
731
+ exports.modifyAt = modifyAt;
732
+ /**
733
+ * Reverse an array, creating a new array
734
+ *
735
+ * @example
736
+ * import { reverse } from 'fp-ts/ReadonlyArray'
737
+ *
738
+ * assert.deepStrictEqual(reverse([1, 2, 3]), [3, 2, 1])
739
+ *
740
+ * @since 2.5.0
741
+ */
742
+ var reverse = function (as) { return (as.length <= 1 ? as : as.slice().reverse()); };
743
+ exports.reverse = reverse;
744
+ /**
745
+ * Extracts from an array of `Either` all the `Right` elements. All the `Right` elements are extracted in order
746
+ *
747
+ * @example
748
+ * import { rights } from 'fp-ts/ReadonlyArray'
749
+ * import { right, left } from 'fp-ts/Either'
750
+ *
751
+ * assert.deepStrictEqual(rights([right(1), left('foo'), right(2)]), [1, 2])
752
+ *
753
+ * @since 2.5.0
754
+ */
755
+ var rights = function (as) {
756
+ var r = [];
757
+ for (var i = 0; i < as.length; i++) {
758
+ var a = as[i];
759
+ if (a._tag === 'Right') {
760
+ r.push(a.right);
761
+ }
762
+ }
763
+ return r;
764
+ };
765
+ exports.rights = rights;
766
+ /**
767
+ * Extracts from an array of `Either` all the `Left` elements. All the `Left` elements are extracted in order
768
+ *
769
+ * @example
770
+ * import { lefts } from 'fp-ts/ReadonlyArray'
771
+ * import { left, right } from 'fp-ts/Either'
772
+ *
773
+ * assert.deepStrictEqual(lefts([right(1), left('foo'), right(2)]), ['foo'])
774
+ *
775
+ * @since 2.5.0
776
+ */
777
+ var lefts = function (as) {
778
+ var r = [];
779
+ for (var i = 0; i < as.length; i++) {
780
+ var a = as[i];
781
+ if (a._tag === 'Left') {
782
+ r.push(a.left);
783
+ }
784
+ }
785
+ return r;
786
+ };
787
+ exports.lefts = lefts;
788
+ /**
789
+ * Sort the elements of an array in increasing order, creating a new array
790
+ *
791
+ * @example
792
+ * import { sort } from 'fp-ts/ReadonlyArray'
793
+ * import * as N from 'fp-ts/number'
794
+ *
795
+ * assert.deepStrictEqual(sort(N.Ord)([3, 2, 1]), [1, 2, 3])
796
+ *
797
+ * @since 2.5.0
798
+ */
799
+ var sort = function (O) {
800
+ return function (as) {
801
+ return as.length <= 1 ? as : as.slice().sort(O.compare);
802
+ };
803
+ };
804
+ exports.sort = sort;
805
+ // TODO: curry and make data-last in v3
806
+ /**
807
+ * Apply a function to pairs of elements at the same index in two arrays, collecting the results in a new array. If one
808
+ * input array is short, excess elements of the longer array are discarded.
809
+ *
810
+ * @example
811
+ * import { zipWith } from 'fp-ts/ReadonlyArray'
812
+ *
813
+ * assert.deepStrictEqual(zipWith([1, 2, 3], ['a', 'b', 'c', 'd'], (n, s) => s + n), ['a1', 'b2', 'c3'])
814
+ *
815
+ * @since 2.5.0
816
+ */
817
+ var zipWith = function (fa, fb, f) {
818
+ var fc = [];
819
+ var len = Math.min(fa.length, fb.length);
820
+ for (var i = 0; i < len; i++) {
821
+ fc[i] = f(fa[i], fb[i]);
822
+ }
823
+ return fc;
824
+ };
825
+ exports.zipWith = zipWith;
826
+ function zip(as, bs) {
827
+ if (bs === undefined) {
828
+ return function (bs) { return zip(bs, as); };
829
+ }
830
+ return (0, exports.zipWith)(as, bs, function (a, b) { return [a, b]; });
831
+ }
832
+ /**
833
+ * The function is reverse of `zip`. Takes an array of pairs and return two corresponding arrays
834
+ *
835
+ * @example
836
+ * import { unzip } from 'fp-ts/ReadonlyArray'
837
+ *
838
+ * assert.deepStrictEqual(unzip([[1, 'a'], [2, 'b'], [3, 'c']]), [[1, 2, 3], ['a', 'b', 'c']])
839
+ *
840
+ * @since 2.5.0
841
+ */
842
+ var unzip = function (as) {
843
+ var fa = [];
844
+ var fb = [];
845
+ for (var i = 0; i < as.length; i++) {
846
+ fa[i] = as[i][0];
847
+ fb[i] = as[i][1];
848
+ }
849
+ return [fa, fb];
850
+ };
851
+ exports.unzip = unzip;
852
+ /**
853
+ * Prepend an element to every member of an array
854
+ *
855
+ * @example
856
+ * import { prependAll } from 'fp-ts/ReadonlyArray'
857
+ *
858
+ * assert.deepStrictEqual(prependAll(9)([1, 2, 3, 4]), [9, 1, 9, 2, 9, 3, 9, 4])
859
+ *
860
+ * @since 2.10.0
861
+ */
862
+ var prependAll = function (middle) {
863
+ var f = RNEA.prependAll(middle);
864
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? f(as) : as); };
865
+ };
866
+ exports.prependAll = prependAll;
867
+ /**
868
+ * Places an element in between members of an array
869
+ *
870
+ * @example
871
+ * import { intersperse } from 'fp-ts/ReadonlyArray'
872
+ *
873
+ * assert.deepStrictEqual(intersperse(9)([1, 2, 3, 4]), [1, 9, 2, 9, 3, 9, 4])
874
+ *
875
+ * @since 2.9.0
876
+ */
877
+ var intersperse = function (middle) {
878
+ var f = RNEA.intersperse(middle);
879
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? f(as) : as); };
880
+ };
881
+ exports.intersperse = intersperse;
882
+ /**
883
+ * Rotate a `ReadonlyArray` by `n` steps.
884
+ *
885
+ * @example
886
+ * import { rotate } from 'fp-ts/ReadonlyArray'
887
+ *
888
+ * assert.deepStrictEqual(rotate(2)([1, 2, 3, 4, 5]), [4, 5, 1, 2, 3])
889
+ *
890
+ * @since 2.5.0
891
+ */
892
+ var rotate = function (n) {
893
+ var f = RNEA.rotate(n);
894
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? f(as) : as); };
895
+ };
896
+ exports.rotate = rotate;
897
+ function elem(E) {
898
+ return function (a, as) {
899
+ if (as === undefined) {
900
+ var elemE_1 = elem(E);
901
+ return function (as) { return elemE_1(a, as); };
902
+ }
903
+ var predicate = function (element) { return E.equals(element, a); };
904
+ var i = 0;
905
+ for (; i < as.length; i++) {
906
+ if (predicate(as[i])) {
907
+ return true;
908
+ }
909
+ }
910
+ return false;
911
+ };
912
+ }
913
+ /**
914
+ * Remove duplicates from an array, keeping the first occurrence of an element.
915
+ *
916
+ * @example
917
+ * import { uniq } from 'fp-ts/ReadonlyArray'
918
+ * import * as N from 'fp-ts/number'
919
+ *
920
+ * assert.deepStrictEqual(uniq(N.Eq)([1, 2, 1]), [1, 2])
921
+ *
922
+ * @since 2.5.0
923
+ */
924
+ var uniq = function (E) {
925
+ var f = RNEA.uniq(E);
926
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? f(as) : as); };
927
+ };
928
+ exports.uniq = uniq;
929
+ /**
930
+ * Sort the elements of an array in increasing order, where elements are compared using first `ords[0]`, then `ords[1]`,
931
+ * etc...
932
+ *
933
+ * @example
934
+ * import { sortBy } from 'fp-ts/ReadonlyArray'
935
+ * import { contramap } from 'fp-ts/Ord'
936
+ * import * as S from 'fp-ts/string'
937
+ * import * as N from 'fp-ts/number'
938
+ * import { pipe } from 'fp-ts/function'
939
+ *
940
+ * interface Person {
941
+ * readonly name: string
942
+ * readonly age: number
943
+ * }
944
+ * const byName = pipe(S.Ord, contramap((p: Person) => p.name))
945
+ * const byAge = pipe(N.Ord, contramap((p: Person) => p.age))
946
+ *
947
+ * const sortByNameByAge = sortBy([byName, byAge])
948
+ *
949
+ * const persons = [{ name: 'a', age: 1 }, { name: 'b', age: 3 }, { name: 'c', age: 2 }, { name: 'b', age: 2 }]
950
+ * assert.deepStrictEqual(sortByNameByAge(persons), [
951
+ * { name: 'a', age: 1 },
952
+ * { name: 'b', age: 2 },
953
+ * { name: 'b', age: 3 },
954
+ * { name: 'c', age: 2 }
955
+ * ])
956
+ *
957
+ * @since 2.5.0
958
+ */
959
+ var sortBy = function (ords) {
960
+ var f = RNEA.sortBy(ords);
961
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? f(as) : as); };
962
+ };
963
+ exports.sortBy = sortBy;
964
+ /**
965
+ * A useful recursion pattern for processing a `ReadonlyArray` to produce a new `ReadonlyArray`, often used for "chopping" up the input
966
+ * `ReadonlyArray`. Typically `chop` is called with some function that will consume an initial prefix of the `ReadonlyArray` and produce a
967
+ * value and the tail of the `ReadonlyArray`.
968
+ *
969
+ * @example
970
+ * import { Eq } from 'fp-ts/Eq'
971
+ * import * as RA from 'fp-ts/ReadonlyArray'
972
+ * import * as N from 'fp-ts/number'
973
+ * import { pipe } from 'fp-ts/function'
974
+ *
975
+ * const group = <A>(S: Eq<A>): ((as: ReadonlyArray<A>) => ReadonlyArray<ReadonlyArray<A>>) => {
976
+ * return RA.chop(as => {
977
+ * const { init, rest } = pipe(as, RA.spanLeft((a: A) => S.equals(a, as[0])))
978
+ * return [init, rest]
979
+ * })
980
+ * }
981
+ * assert.deepStrictEqual(group(N.Eq)([1, 1, 2, 3, 3, 4]), [[1, 1], [2], [3, 3], [4]])
982
+ *
983
+ * @since 2.5.0
984
+ */
985
+ var chop = function (f) {
986
+ var g = RNEA.chop(f);
987
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? g(as) : exports.empty); };
988
+ };
989
+ exports.chop = chop;
990
+ /**
991
+ * Splits a `ReadonlyArray` into two pieces, the first piece has max `n` elements.
992
+ *
993
+ * @example
994
+ * import { splitAt } from 'fp-ts/ReadonlyArray'
995
+ *
996
+ * assert.deepStrictEqual(splitAt(2)([1, 2, 3, 4, 5]), [[1, 2], [3, 4, 5]])
997
+ *
998
+ * @since 2.5.0
999
+ */
1000
+ var splitAt = function (n) {
1001
+ return function (as) {
1002
+ return n >= 1 && (0, exports.isNonEmpty)(as) ? RNEA.splitAt(n)(as) : (0, exports.isEmpty)(as) ? [as, exports.empty] : [exports.empty, as];
1003
+ };
1004
+ };
1005
+ exports.splitAt = splitAt;
1006
+ /**
1007
+ * Splits a `ReadonlyArray` into length-`n` pieces. The last piece will be shorter if `n` does not evenly divide the length of
1008
+ * the `ReadonlyArray`. Note that `chunksOf(n)([])` is `[]`, not `[[]]`. This is intentional, and is consistent with a recursive
1009
+ * definition of `chunksOf`; it satisfies the property that:
1010
+ *
1011
+ * ```ts
1012
+ * chunksOf(n)(xs).concat(chunksOf(n)(ys)) == chunksOf(n)(xs.concat(ys)))
1013
+ * ```
1014
+ *
1015
+ * whenever `n` evenly divides the length of `as`.
1016
+ *
1017
+ * @example
1018
+ * import { chunksOf } from 'fp-ts/ReadonlyArray'
1019
+ *
1020
+ * assert.deepStrictEqual(chunksOf(2)([1, 2, 3, 4, 5]), [[1, 2], [3, 4], [5]])
1021
+ *
1022
+ * @since 2.5.0
1023
+ */
1024
+ var chunksOf = function (n) {
1025
+ var f = RNEA.chunksOf(n);
1026
+ return function (as) { return ((0, exports.isNonEmpty)(as) ? f(as) : exports.empty); };
1027
+ };
1028
+ exports.chunksOf = chunksOf;
1029
+ /**
1030
+ * @category lifting
1031
+ * @since 2.11.0
1032
+ */
1033
+ var fromOptionK = function (f) {
1034
+ return function () {
1035
+ var a = [];
1036
+ for (var _i = 0; _i < arguments.length; _i++) {
1037
+ a[_i] = arguments[_i];
1038
+ }
1039
+ return (0, exports.fromOption)(f.apply(void 0, a));
1040
+ };
1041
+ };
1042
+ exports.fromOptionK = fromOptionK;
1043
+ function comprehension(input, f, g) {
1044
+ if (g === void 0) { g = function () { return true; }; }
1045
+ var go = function (scope, input) {
1046
+ return (0, exports.isNonEmpty)(input)
1047
+ ? (0, exports.flatMap)(RNEA.head(input), function (a) { return go((0, function_1.pipe)(scope, (0, exports.append)(a)), RNEA.tail(input)); })
1048
+ : g.apply(void 0, scope) ? [f.apply(void 0, scope)]
1049
+ : exports.empty;
1050
+ };
1051
+ return go(exports.empty, input);
1052
+ }
1053
+ /**
1054
+ * @since 2.11.0
1055
+ */
1056
+ var concatW = function (second) {
1057
+ return function (first) {
1058
+ return (0, exports.isEmpty)(first) ? second : (0, exports.isEmpty)(second) ? first : first.concat(second);
1059
+ };
1060
+ };
1061
+ exports.concatW = concatW;
1062
+ /**
1063
+ * @since 2.11.0
1064
+ */
1065
+ exports.concat = exports.concatW;
1066
+ function union(E) {
1067
+ var unionE = RNEA.union(E);
1068
+ return function (first, second) {
1069
+ if (second === undefined) {
1070
+ var unionE_1 = union(E);
1071
+ return function (second) { return unionE_1(second, first); };
1072
+ }
1073
+ return (0, exports.isNonEmpty)(first) && (0, exports.isNonEmpty)(second) ? unionE(second)(first) : (0, exports.isNonEmpty)(first) ? first : second;
1074
+ };
1075
+ }
1076
+ function intersection(E) {
1077
+ var elemE = elem(E);
1078
+ return function (xs, ys) {
1079
+ if (ys === undefined) {
1080
+ var intersectionE_1 = intersection(E);
1081
+ return function (ys) { return intersectionE_1(ys, xs); };
1082
+ }
1083
+ return xs.filter(function (a) { return elemE(a, ys); });
1084
+ };
1085
+ }
1086
+ function difference(E) {
1087
+ var elemE = elem(E);
1088
+ return function (xs, ys) {
1089
+ if (ys === undefined) {
1090
+ var differenceE_1 = difference(E);
1091
+ return function (ys) { return differenceE_1(ys, xs); };
1092
+ }
1093
+ return xs.filter(function (a) { return !elemE(a, ys); });
1094
+ };
1095
+ }
1096
+ var _map = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.map)(f)); };
1097
+ var _mapWithIndex = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.mapWithIndex)(f)); };
1098
+ var _ap = function (fab, fa) { return (0, function_1.pipe)(fab, (0, exports.ap)(fa)); };
1099
+ var _filter = function (fa, predicate) {
1100
+ return (0, function_1.pipe)(fa, (0, exports.filter)(predicate));
1101
+ };
1102
+ var _filterMap = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.filterMap)(f)); };
1103
+ var _partition = function (fa, predicate) {
1104
+ return (0, function_1.pipe)(fa, (0, exports.partition)(predicate));
1105
+ };
1106
+ var _partitionMap = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.partitionMap)(f)); };
1107
+ var _partitionWithIndex = function (fa, predicateWithIndex) { return (0, function_1.pipe)(fa, (0, exports.partitionWithIndex)(predicateWithIndex)); };
1108
+ var _partitionMapWithIndex = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.partitionMapWithIndex)(f)); };
1109
+ var _alt = function (fa, that) { return (0, function_1.pipe)(fa, (0, exports.alt)(that)); };
1110
+ var _reduce = function (fa, b, f) { return (0, function_1.pipe)(fa, (0, exports.reduce)(b, f)); };
1111
+ var _foldMap = function (M) {
1112
+ var foldMapM = (0, exports.foldMap)(M);
1113
+ return function (fa, f) { return (0, function_1.pipe)(fa, foldMapM(f)); };
1114
+ };
1115
+ var _reduceRight = function (fa, b, f) { return (0, function_1.pipe)(fa, (0, exports.reduceRight)(b, f)); };
1116
+ var _reduceWithIndex = function (fa, b, f) {
1117
+ return (0, function_1.pipe)(fa, (0, exports.reduceWithIndex)(b, f));
1118
+ };
1119
+ var _foldMapWithIndex = function (M) {
1120
+ var foldMapWithIndexM = (0, exports.foldMapWithIndex)(M);
1121
+ return function (fa, f) { return (0, function_1.pipe)(fa, foldMapWithIndexM(f)); };
1122
+ };
1123
+ var _reduceRightWithIndex = function (fa, b, f) {
1124
+ return (0, function_1.pipe)(fa, (0, exports.reduceRightWithIndex)(b, f));
1125
+ };
1126
+ var _filterMapWithIndex = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.filterMapWithIndex)(f)); };
1127
+ var _filterWithIndex = function (fa, predicateWithIndex) { return (0, function_1.pipe)(fa, (0, exports.filterWithIndex)(predicateWithIndex)); };
1128
+ var _extend = function (fa, f) { return (0, function_1.pipe)(fa, (0, exports.extend)(f)); };
1129
+ var _traverse = function (F) {
1130
+ var traverseF = (0, exports.traverse)(F);
1131
+ return function (ta, f) { return (0, function_1.pipe)(ta, traverseF(f)); };
1132
+ };
1133
+ /* istanbul ignore next */
1134
+ var _traverseWithIndex = function (F) {
1135
+ var traverseWithIndexF = (0, exports.traverseWithIndex)(F);
1136
+ return function (ta, f) { return (0, function_1.pipe)(ta, traverseWithIndexF(f)); };
1137
+ };
1138
+ /** @internal */
1139
+ var _chainRecDepthFirst = function (a, f) { return (0, function_1.pipe)(a, (0, exports.chainRecDepthFirst)(f)); };
1140
+ exports._chainRecDepthFirst = _chainRecDepthFirst;
1141
+ /** @internal */
1142
+ var _chainRecBreadthFirst = function (a, f) { return (0, function_1.pipe)(a, (0, exports.chainRecBreadthFirst)(f)); };
1143
+ exports._chainRecBreadthFirst = _chainRecBreadthFirst;
1144
+ /**
1145
+ * @category constructors
1146
+ * @since 2.5.0
1147
+ */
1148
+ exports.of = RNEA.of;
1149
+ /**
1150
+ * @since 2.7.0
1151
+ */
1152
+ var zero = function () { return exports.empty; };
1153
+ exports.zero = zero;
1154
+ /**
1155
+ * Less strict version of [`alt`](#alt).
1156
+ *
1157
+ * The `W` suffix (short for **W**idening) means that the return types will be merged.
1158
+ *
1159
+ * @example
1160
+ * import * as RA from 'fp-ts/ReadonlyArray'
1161
+ * import { pipe } from 'fp-ts/function'
1162
+ *
1163
+ * assert.deepStrictEqual(
1164
+ * pipe(
1165
+ * [1, 2, 3],
1166
+ * RA.altW(() => ['a', 'b'])
1167
+ * ),
1168
+ * [1, 2, 3, 'a', 'b']
1169
+ * )
1170
+ *
1171
+ * @category error handling
1172
+ * @since 2.9.0
1173
+ */
1174
+ var altW = function (that) {
1175
+ return function (fa) {
1176
+ return fa.concat(that());
1177
+ };
1178
+ };
1179
+ exports.altW = altW;
1180
+ /**
1181
+ * Identifies an associative operation on a type constructor. It is similar to `Semigroup`, except that it applies to
1182
+ * types of kind `* -> *`.
1183
+ *
1184
+ * In case of `ReadonlyArray` concatenates the inputs into a single array.
1185
+ *
1186
+ * @example
1187
+ * import * as RA from 'fp-ts/ReadonlyArray'
1188
+ * import { pipe } from 'fp-ts/function'
1189
+ *
1190
+ * assert.deepStrictEqual(
1191
+ * pipe(
1192
+ * [1, 2, 3],
1193
+ * RA.alt(() => [4, 5])
1194
+ * ),
1195
+ * [1, 2, 3, 4, 5]
1196
+ * )
1197
+ *
1198
+ * @category error handling
1199
+ * @since 2.5.0
1200
+ */
1201
+ exports.alt = exports.altW;
1202
+ /**
1203
+ * @since 2.5.0
1204
+ */
1205
+ var ap = function (fa) {
1206
+ return (0, exports.flatMap)(function (f) { return (0, function_1.pipe)(fa, (0, exports.map)(f)); });
1207
+ };
1208
+ exports.ap = ap;
1209
+ /**
1210
+ * Composes computations in sequence, using the return value of one computation to determine the next computation.
1211
+ *
1212
+ * @example
1213
+ * import * as RA from 'fp-ts/ReadonlyArray'
1214
+ * import { pipe } from 'fp-ts/function'
1215
+ *
1216
+ * assert.deepStrictEqual(
1217
+ * pipe(
1218
+ * [1, 2, 3],
1219
+ * RA.flatMap((n) => [`a${n}`, `b${n}`])
1220
+ * ),
1221
+ * ['a1', 'b1', 'a2', 'b2', 'a3', 'b3']
1222
+ * )
1223
+ * assert.deepStrictEqual(
1224
+ * pipe(
1225
+ * [1, 2, 3],
1226
+ * RA.flatMap(() => [])
1227
+ * ),
1228
+ * []
1229
+ * )
1230
+ *
1231
+ * @category sequencing
1232
+ * @since 2.14.0
1233
+ */
1234
+ exports.flatMap = (0, function_1.dual)(2, function (ma, f) {
1235
+ return (0, function_1.pipe)(ma, (0, exports.chainWithIndex)(function (i, a) { return f(a, i); }));
1236
+ });
1237
+ /**
1238
+ * @category sequencing
1239
+ * @since 2.5.0
1240
+ */
1241
+ exports.flatten = (0, exports.flatMap)(function_1.identity);
1242
+ /**
1243
+ * `map` can be used to turn functions `(a: A) => B` into functions `(fa: F<A>) => F<B>` whose argument and return types
1244
+ * use the type constructor `F` to represent some computational context.
1245
+ *
1246
+ * @category mapping
1247
+ * @since 2.5.0
1248
+ */
1249
+ var map = function (f) { return function (fa) {
1250
+ return fa.map(function (a) { return f(a); });
1251
+ }; };
1252
+ exports.map = map;
1253
+ /**
1254
+ * @category mapping
1255
+ * @since 2.5.0
1256
+ */
1257
+ var mapWithIndex = function (f) { return function (fa) {
1258
+ return fa.map(function (a, i) { return f(i, a); });
1259
+ }; };
1260
+ exports.mapWithIndex = mapWithIndex;
1261
+ /**
1262
+ * @category filtering
1263
+ * @since 2.5.0
1264
+ */
1265
+ var separate = function (fa) {
1266
+ var left = [];
1267
+ var right = [];
1268
+ for (var _i = 0, fa_1 = fa; _i < fa_1.length; _i++) {
1269
+ var e = fa_1[_i];
1270
+ if (e._tag === 'Left') {
1271
+ left.push(e.left);
1272
+ }
1273
+ else {
1274
+ right.push(e.right);
1275
+ }
1276
+ }
1277
+ return (0, Separated_1.separated)(left, right);
1278
+ };
1279
+ exports.separate = separate;
1280
+ /**
1281
+ * @category filtering
1282
+ * @since 2.5.0
1283
+ */
1284
+ var filter = function (predicate) {
1285
+ return function (as) {
1286
+ return as.filter(predicate);
1287
+ };
1288
+ };
1289
+ exports.filter = filter;
1290
+ /**
1291
+ * @category filtering
1292
+ * @since 2.5.0
1293
+ */
1294
+ var filterMapWithIndex = function (f) {
1295
+ return function (fa) {
1296
+ var out = [];
1297
+ for (var i = 0; i < fa.length; i++) {
1298
+ var optionB = f(i, fa[i]);
1299
+ if (_.isSome(optionB)) {
1300
+ out.push(optionB.value);
1301
+ }
1302
+ }
1303
+ return out;
1304
+ };
1305
+ };
1306
+ exports.filterMapWithIndex = filterMapWithIndex;
1307
+ /**
1308
+ * @category filtering
1309
+ * @since 2.5.0
1310
+ */
1311
+ var filterMap = function (f) {
1312
+ return (0, exports.filterMapWithIndex)(function (_, a) { return f(a); });
1313
+ };
1314
+ exports.filterMap = filterMap;
1315
+ /**
1316
+ * @category filtering
1317
+ * @since 2.5.0
1318
+ */
1319
+ exports.compact = (0, exports.filterMap)(function_1.identity);
1320
+ /**
1321
+ * @category filtering
1322
+ * @since 2.5.0
1323
+ */
1324
+ var partition = function (predicate) {
1325
+ return (0, exports.partitionWithIndex)(function (_, a) { return predicate(a); });
1326
+ };
1327
+ exports.partition = partition;
1328
+ /**
1329
+ * @category filtering
1330
+ * @since 2.5.0
1331
+ */
1332
+ var partitionWithIndex = function (predicateWithIndex) {
1333
+ return function (as) {
1334
+ var left = [];
1335
+ var right = [];
1336
+ for (var i = 0; i < as.length; i++) {
1337
+ var a = as[i];
1338
+ if (predicateWithIndex(i, a)) {
1339
+ right.push(a);
1340
+ }
1341
+ else {
1342
+ left.push(a);
1343
+ }
1344
+ }
1345
+ return (0, Separated_1.separated)(left, right);
1346
+ };
1347
+ };
1348
+ exports.partitionWithIndex = partitionWithIndex;
1349
+ /**
1350
+ * @category filtering
1351
+ * @since 2.5.0
1352
+ */
1353
+ var partitionMap = function (f) {
1354
+ return (0, exports.partitionMapWithIndex)(function (_, a) { return f(a); });
1355
+ };
1356
+ exports.partitionMap = partitionMap;
1357
+ /**
1358
+ * @category filtering
1359
+ * @since 2.5.0
1360
+ */
1361
+ var partitionMapWithIndex = function (f) {
1362
+ return function (fa) {
1363
+ var left = [];
1364
+ var right = [];
1365
+ for (var i = 0; i < fa.length; i++) {
1366
+ var e = f(i, fa[i]);
1367
+ if (e._tag === 'Left') {
1368
+ left.push(e.left);
1369
+ }
1370
+ else {
1371
+ right.push(e.right);
1372
+ }
1373
+ }
1374
+ return (0, Separated_1.separated)(left, right);
1375
+ };
1376
+ };
1377
+ exports.partitionMapWithIndex = partitionMapWithIndex;
1378
+ /**
1379
+ * @category filtering
1380
+ * @since 2.5.0
1381
+ */
1382
+ var filterWithIndex = function (predicateWithIndex) {
1383
+ return function (as) {
1384
+ return as.filter(function (a, i) { return predicateWithIndex(i, a); });
1385
+ };
1386
+ };
1387
+ exports.filterWithIndex = filterWithIndex;
1388
+ /**
1389
+ * @since 2.5.0
1390
+ */
1391
+ var extend = function (f) { return function (wa) {
1392
+ return wa.map(function (_, i) { return f(wa.slice(i)); });
1393
+ }; };
1394
+ exports.extend = extend;
1395
+ /**
1396
+ * @since 2.5.0
1397
+ */
1398
+ exports.duplicate = (0, exports.extend)(function_1.identity);
1399
+ /**
1400
+ * @category folding
1401
+ * @since 2.5.0
1402
+ */
1403
+ var foldMapWithIndex = function (M) {
1404
+ return function (f) {
1405
+ return function (fa) {
1406
+ return fa.reduce(function (b, a, i) { return M.concat(b, f(i, a)); }, M.empty);
1407
+ };
1408
+ };
1409
+ };
1410
+ exports.foldMapWithIndex = foldMapWithIndex;
1411
+ /**
1412
+ * @category folding
1413
+ * @since 2.5.0
1414
+ */
1415
+ var reduce = function (b, f) {
1416
+ return (0, exports.reduceWithIndex)(b, function (_, b, a) { return f(b, a); });
1417
+ };
1418
+ exports.reduce = reduce;
1419
+ /**
1420
+ * @category folding
1421
+ * @since 2.5.0
1422
+ */
1423
+ var foldMap = function (M) {
1424
+ var foldMapWithIndexM = (0, exports.foldMapWithIndex)(M);
1425
+ return function (f) { return foldMapWithIndexM(function (_, a) { return f(a); }); };
1426
+ };
1427
+ exports.foldMap = foldMap;
1428
+ /**
1429
+ * @category folding
1430
+ * @since 2.5.0
1431
+ */
1432
+ var reduceWithIndex = function (b, f) { return function (fa) {
1433
+ var len = fa.length;
1434
+ var out = b;
1435
+ for (var i = 0; i < len; i++) {
1436
+ out = f(i, out, fa[i]);
1437
+ }
1438
+ return out;
1439
+ }; };
1440
+ exports.reduceWithIndex = reduceWithIndex;
1441
+ /**
1442
+ * @category folding
1443
+ * @since 2.5.0
1444
+ */
1445
+ var reduceRight = function (b, f) {
1446
+ return (0, exports.reduceRightWithIndex)(b, function (_, a, b) { return f(a, b); });
1447
+ };
1448
+ exports.reduceRight = reduceRight;
1449
+ /**
1450
+ * @category folding
1451
+ * @since 2.5.0
1452
+ */
1453
+ var reduceRightWithIndex = function (b, f) { return function (fa) {
1454
+ return fa.reduceRight(function (b, a, i) { return f(i, a, b); }, b);
1455
+ }; };
1456
+ exports.reduceRightWithIndex = reduceRightWithIndex;
1457
+ /**
1458
+ * @category traversing
1459
+ * @since 2.6.3
1460
+ */
1461
+ var traverse = function (F) {
1462
+ var traverseWithIndexF = (0, exports.traverseWithIndex)(F);
1463
+ return function (f) { return traverseWithIndexF(function (_, a) { return f(a); }); };
1464
+ };
1465
+ exports.traverse = traverse;
1466
+ /**
1467
+ * @category traversing
1468
+ * @since 2.6.3
1469
+ */
1470
+ var sequence = function (F) {
1471
+ return function (ta) {
1472
+ return _reduce(ta, F.of((0, exports.zero)()), function (fas, fa) {
1473
+ return F.ap(F.map(fas, function (as) { return function (a) { return (0, function_1.pipe)(as, (0, exports.append)(a)); }; }), fa);
1474
+ });
1475
+ };
1476
+ };
1477
+ exports.sequence = sequence;
1478
+ /**
1479
+ * @category sequencing
1480
+ * @since 2.6.3
1481
+ */
1482
+ var traverseWithIndex = function (F) {
1483
+ return function (f) {
1484
+ return (0, exports.reduceWithIndex)(F.of((0, exports.zero)()), function (i, fbs, a) {
1485
+ return F.ap(F.map(fbs, function (bs) { return function (b) { return (0, function_1.pipe)(bs, (0, exports.append)(b)); }; }), f(i, a));
1486
+ });
1487
+ };
1488
+ };
1489
+ exports.traverseWithIndex = traverseWithIndex;
1490
+ /**
1491
+ * @category filtering
1492
+ * @since 2.6.5
1493
+ */
1494
+ var wither = function (F) {
1495
+ var _witherF = _wither(F);
1496
+ return function (f) { return function (fa) { return _witherF(fa, f); }; };
1497
+ };
1498
+ exports.wither = wither;
1499
+ /**
1500
+ * @category filtering
1501
+ * @since 2.6.5
1502
+ */
1503
+ var wilt = function (F) {
1504
+ var _wiltF = _wilt(F);
1505
+ return function (f) { return function (fa) { return _wiltF(fa, f); }; };
1506
+ };
1507
+ exports.wilt = wilt;
1508
+ /**
1509
+ * @since 2.6.6
1510
+ */
1511
+ var unfold = function (b, f) {
1512
+ var out = [];
1513
+ var bb = b;
1514
+ // eslint-disable-next-line no-constant-condition
1515
+ while (true) {
1516
+ var mt = f(bb);
1517
+ if (_.isSome(mt)) {
1518
+ var _a = mt.value, a = _a[0], b_1 = _a[1];
1519
+ out.push(a);
1520
+ bb = b_1;
1521
+ }
1522
+ else {
1523
+ break;
1524
+ }
1525
+ }
1526
+ return out;
1527
+ };
1528
+ exports.unfold = unfold;
1529
+ /**
1530
+ * @category type lambdas
1531
+ * @since 2.5.0
1532
+ */
1533
+ exports.URI = 'ReadonlyArray';
1534
+ /**
1535
+ * @category instances
1536
+ * @since 2.5.0
1537
+ */
1538
+ var getShow = function (S) { return ({
1539
+ show: function (as) { return "[".concat(as.map(S.show).join(', '), "]"); }
1540
+ }); };
1541
+ exports.getShow = getShow;
1542
+ /**
1543
+ * @category instances
1544
+ * @since 2.5.0
1545
+ */
1546
+ var getSemigroup = function () { return ({
1547
+ concat: function (first, second) { return ((0, exports.isEmpty)(first) ? second : (0, exports.isEmpty)(second) ? first : first.concat(second)); }
1548
+ }); };
1549
+ exports.getSemigroup = getSemigroup;
1550
+ /**
1551
+ * Returns a `Monoid` for `ReadonlyArray<A>`.
1552
+ *
1553
+ * @example
1554
+ * import { getMonoid } from 'fp-ts/ReadonlyArray'
1555
+ *
1556
+ * const M = getMonoid<number>()
1557
+ * assert.deepStrictEqual(M.concat([1, 2], [3, 4]), [1, 2, 3, 4])
1558
+ *
1559
+ * @category instances
1560
+ * @since 2.5.0
1561
+ */
1562
+ var getMonoid = function () { return ({
1563
+ concat: (0, exports.getSemigroup)().concat,
1564
+ empty: exports.empty
1565
+ }); };
1566
+ exports.getMonoid = getMonoid;
1567
+ /**
1568
+ * Derives an `Eq` over the `ReadonlyArray` of a given element type from the `Eq` of that type. The derived `Eq` defines two
1569
+ * arrays as equal if all elements of both arrays are compared equal pairwise with the given `E`. In case of arrays of
1570
+ * different lengths, the result is non equality.
1571
+ *
1572
+ * @example
1573
+ * import * as S from 'fp-ts/string'
1574
+ * import { getEq } from 'fp-ts/ReadonlyArray'
1575
+ *
1576
+ * const E = getEq(S.Eq)
1577
+ * assert.strictEqual(E.equals(['a', 'b'], ['a', 'b']), true)
1578
+ * assert.strictEqual(E.equals(['a'], []), false)
1579
+ *
1580
+ * @category instances
1581
+ * @since 2.5.0
1582
+ */
1583
+ var getEq = function (E) {
1584
+ return (0, Eq_1.fromEquals)(function (xs, ys) { return xs.length === ys.length && xs.every(function (x, i) { return E.equals(x, ys[i]); }); });
1585
+ };
1586
+ exports.getEq = getEq;
1587
+ /**
1588
+ * Derives an `Ord` over the `ReadonlyArray` of a given element type from the `Ord` of that type. The ordering between two such
1589
+ * arrays is equal to: the first non equal comparison of each arrays elements taken pairwise in increasing order, in
1590
+ * case of equality over all the pairwise elements; the longest array is considered the greatest, if both arrays have
1591
+ * the same length, the result is equality.
1592
+ *
1593
+ * @example
1594
+ * import { getOrd } from 'fp-ts/ReadonlyArray'
1595
+ * import * as S from 'fp-ts/string'
1596
+ *
1597
+ * const O = getOrd(S.Ord)
1598
+ * assert.strictEqual(O.compare(['b'], ['a']), 1)
1599
+ * assert.strictEqual(O.compare(['a'], ['a']), 0)
1600
+ * assert.strictEqual(O.compare(['a'], ['b']), -1)
1601
+ *
1602
+ *
1603
+ * @category instances
1604
+ * @since 2.5.0
1605
+ */
1606
+ var getOrd = function (O) {
1607
+ return (0, Ord_1.fromCompare)(function (a, b) {
1608
+ var aLen = a.length;
1609
+ var bLen = b.length;
1610
+ var len = Math.min(aLen, bLen);
1611
+ for (var i = 0; i < len; i++) {
1612
+ var ordering = O.compare(a[i], b[i]);
1613
+ if (ordering !== 0) {
1614
+ return ordering;
1615
+ }
1616
+ }
1617
+ return N.Ord.compare(aLen, bLen);
1618
+ });
1619
+ };
1620
+ exports.getOrd = getOrd;
1621
+ /**
1622
+ * @category instances
1623
+ * @since 2.11.0
1624
+ */
1625
+ var getUnionSemigroup = function (E) {
1626
+ var unionE = union(E);
1627
+ return {
1628
+ concat: function (first, second) { return unionE(second)(first); }
1629
+ };
1630
+ };
1631
+ exports.getUnionSemigroup = getUnionSemigroup;
1632
+ /**
1633
+ * @category instances
1634
+ * @since 2.11.0
1635
+ */
1636
+ var getUnionMonoid = function (E) { return ({
1637
+ concat: (0, exports.getUnionSemigroup)(E).concat,
1638
+ empty: exports.empty
1639
+ }); };
1640
+ exports.getUnionMonoid = getUnionMonoid;
1641
+ /**
1642
+ * @category instances
1643
+ * @since 2.11.0
1644
+ */
1645
+ var getIntersectionSemigroup = function (E) {
1646
+ var intersectionE = intersection(E);
1647
+ return {
1648
+ concat: function (first, second) { return intersectionE(second)(first); }
1649
+ };
1650
+ };
1651
+ exports.getIntersectionSemigroup = getIntersectionSemigroup;
1652
+ /**
1653
+ * @category instances
1654
+ * @since 2.11.0
1655
+ */
1656
+ var getDifferenceMagma = function (E) {
1657
+ var differenceE = difference(E);
1658
+ return {
1659
+ concat: function (first, second) { return differenceE(second)(first); }
1660
+ };
1661
+ };
1662
+ exports.getDifferenceMagma = getDifferenceMagma;
1663
+ /**
1664
+ * @category instances
1665
+ * @since 2.7.0
1666
+ */
1667
+ exports.Functor = {
1668
+ URI: exports.URI,
1669
+ map: _map
1670
+ };
1671
+ /**
1672
+ * @category mapping
1673
+ * @since 2.10.0
1674
+ */
1675
+ exports.flap = (0, Functor_1.flap)(exports.Functor);
1676
+ /**
1677
+ * @category instances
1678
+ * @since 2.10.0
1679
+ */
1680
+ exports.Pointed = {
1681
+ URI: exports.URI,
1682
+ of: exports.of
1683
+ };
1684
+ /**
1685
+ * @category instances
1686
+ * @since 2.7.0
1687
+ */
1688
+ exports.FunctorWithIndex = {
1689
+ URI: exports.URI,
1690
+ map: _map,
1691
+ mapWithIndex: _mapWithIndex
1692
+ };
1693
+ /**
1694
+ * @category instances
1695
+ * @since 2.10.0
1696
+ */
1697
+ exports.Apply = {
1698
+ URI: exports.URI,
1699
+ map: _map,
1700
+ ap: _ap
1701
+ };
1702
+ /**
1703
+ * Combine two effectful actions, keeping only the result of the first.
1704
+ *
1705
+ * @since 2.5.0
1706
+ */
1707
+ exports.apFirst = (0, Apply_1.apFirst)(exports.Apply);
1708
+ /**
1709
+ * Combine two effectful actions, keeping only the result of the second.
1710
+ *
1711
+ * @since 2.5.0
1712
+ */
1713
+ exports.apSecond = (0, Apply_1.apSecond)(exports.Apply);
1714
+ /**
1715
+ * @category instances
1716
+ * @since 2.7.0
1717
+ */
1718
+ exports.Applicative = {
1719
+ URI: exports.URI,
1720
+ map: _map,
1721
+ ap: _ap,
1722
+ of: exports.of
1723
+ };
1724
+ /**
1725
+ * @category instances
1726
+ * @since 2.10.0
1727
+ */
1728
+ exports.Chain = {
1729
+ URI: exports.URI,
1730
+ map: _map,
1731
+ ap: _ap,
1732
+ chain: exports.flatMap
1733
+ };
1734
+ /**
1735
+ * @category instances
1736
+ * @since 2.7.0
1737
+ */
1738
+ exports.Monad = {
1739
+ URI: exports.URI,
1740
+ map: _map,
1741
+ ap: _ap,
1742
+ of: exports.of,
1743
+ chain: exports.flatMap
1744
+ };
1745
+ /**
1746
+ * Composes computations in sequence, using the return value of one computation to determine the next computation and
1747
+ * keeping only the result of the first.
1748
+ *
1749
+ * @example
1750
+ * import * as RA from 'fp-ts/ReadonlyArray'
1751
+ * import { pipe } from 'fp-ts/function'
1752
+ *
1753
+ * assert.deepStrictEqual(
1754
+ * pipe(
1755
+ * [1, 2, 3],
1756
+ * RA.chainFirst(() => ['a', 'b'])
1757
+ * ),
1758
+ * [1, 1, 2, 2, 3, 3]
1759
+ * )
1760
+ * assert.deepStrictEqual(
1761
+ * pipe(
1762
+ * [1, 2, 3],
1763
+ * RA.chainFirst(() => [])
1764
+ * ),
1765
+ * []
1766
+ * )
1767
+ *
1768
+ * @category sequencing
1769
+ * @since 2.5.0
1770
+ */
1771
+ exports.chainFirst =
1772
+ /*#__PURE__*/ (0, Chain_1.chainFirst)(exports.Chain);
1773
+ /**
1774
+ * @category instances
1775
+ * @since 2.7.0
1776
+ */
1777
+ exports.Unfoldable = {
1778
+ URI: exports.URI,
1779
+ unfold: exports.unfold
1780
+ };
1781
+ /**
1782
+ * @category instances
1783
+ * @since 2.7.0
1784
+ */
1785
+ exports.Alt = {
1786
+ URI: exports.URI,
1787
+ map: _map,
1788
+ alt: _alt
1789
+ };
1790
+ /**
1791
+ * @category instances
1792
+ * @since 2.11.0
1793
+ */
1794
+ exports.Zero = {
1795
+ URI: exports.URI,
1796
+ zero: exports.zero
1797
+ };
1798
+ /**
1799
+ * @category do notation
1800
+ * @since 2.11.0
1801
+ */
1802
+ exports.guard = (0, Zero_1.guard)(exports.Zero, exports.Pointed);
1803
+ /**
1804
+ * @category instances
1805
+ * @since 2.7.0
1806
+ */
1807
+ exports.Alternative = {
1808
+ URI: exports.URI,
1809
+ map: _map,
1810
+ ap: _ap,
1811
+ of: exports.of,
1812
+ alt: _alt,
1813
+ zero: exports.zero
1814
+ };
1815
+ /**
1816
+ * @category instances
1817
+ * @since 2.7.0
1818
+ */
1819
+ exports.Extend = {
1820
+ URI: exports.URI,
1821
+ map: _map,
1822
+ extend: _extend
1823
+ };
1824
+ /**
1825
+ * @category instances
1826
+ * @since 2.7.0
1827
+ */
1828
+ exports.Compactable = {
1829
+ URI: exports.URI,
1830
+ compact: exports.compact,
1831
+ separate: exports.separate
1832
+ };
1833
+ /**
1834
+ * @category instances
1835
+ * @since 2.7.0
1836
+ */
1837
+ exports.Filterable = {
1838
+ URI: exports.URI,
1839
+ map: _map,
1840
+ compact: exports.compact,
1841
+ separate: exports.separate,
1842
+ filter: _filter,
1843
+ filterMap: _filterMap,
1844
+ partition: _partition,
1845
+ partitionMap: _partitionMap
1846
+ };
1847
+ /**
1848
+ * @category instances
1849
+ * @since 2.7.0
1850
+ */
1851
+ exports.FilterableWithIndex = {
1852
+ URI: exports.URI,
1853
+ map: _map,
1854
+ mapWithIndex: _mapWithIndex,
1855
+ compact: exports.compact,
1856
+ separate: exports.separate,
1857
+ filter: _filter,
1858
+ filterMap: _filterMap,
1859
+ partition: _partition,
1860
+ partitionMap: _partitionMap,
1861
+ partitionMapWithIndex: _partitionMapWithIndex,
1862
+ partitionWithIndex: _partitionWithIndex,
1863
+ filterMapWithIndex: _filterMapWithIndex,
1864
+ filterWithIndex: _filterWithIndex
1865
+ };
1866
+ /**
1867
+ * @category instances
1868
+ * @since 2.7.0
1869
+ */
1870
+ exports.Foldable = {
1871
+ URI: exports.URI,
1872
+ reduce: _reduce,
1873
+ foldMap: _foldMap,
1874
+ reduceRight: _reduceRight
1875
+ };
1876
+ /**
1877
+ * @category instances
1878
+ * @since 2.7.0
1879
+ */
1880
+ exports.FoldableWithIndex = {
1881
+ URI: exports.URI,
1882
+ reduce: _reduce,
1883
+ foldMap: _foldMap,
1884
+ reduceRight: _reduceRight,
1885
+ reduceWithIndex: _reduceWithIndex,
1886
+ foldMapWithIndex: _foldMapWithIndex,
1887
+ reduceRightWithIndex: _reduceRightWithIndex
1888
+ };
1889
+ /**
1890
+ * @category instances
1891
+ * @since 2.7.0
1892
+ */
1893
+ exports.Traversable = {
1894
+ URI: exports.URI,
1895
+ map: _map,
1896
+ reduce: _reduce,
1897
+ foldMap: _foldMap,
1898
+ reduceRight: _reduceRight,
1899
+ traverse: _traverse,
1900
+ sequence: exports.sequence
1901
+ };
1902
+ /**
1903
+ * @category instances
1904
+ * @since 2.7.0
1905
+ */
1906
+ exports.TraversableWithIndex = {
1907
+ URI: exports.URI,
1908
+ map: _map,
1909
+ mapWithIndex: _mapWithIndex,
1910
+ reduce: _reduce,
1911
+ foldMap: _foldMap,
1912
+ reduceRight: _reduceRight,
1913
+ reduceWithIndex: _reduceWithIndex,
1914
+ foldMapWithIndex: _foldMapWithIndex,
1915
+ reduceRightWithIndex: _reduceRightWithIndex,
1916
+ traverse: _traverse,
1917
+ sequence: exports.sequence,
1918
+ traverseWithIndex: _traverseWithIndex
1919
+ };
1920
+ /**
1921
+ * @category sequencing
1922
+ * @since 2.11.0
1923
+ */
1924
+ var chainRecDepthFirst = function (f) {
1925
+ return function (a) {
1926
+ var todo = __spreadArray([], f(a), true);
1927
+ var out = [];
1928
+ while (todo.length > 0) {
1929
+ var e = todo.shift();
1930
+ if (_.isLeft(e)) {
1931
+ todo.unshift.apply(todo, f(e.left));
1932
+ }
1933
+ else {
1934
+ out.push(e.right);
1935
+ }
1936
+ }
1937
+ return out;
1938
+ };
1939
+ };
1940
+ exports.chainRecDepthFirst = chainRecDepthFirst;
1941
+ /**
1942
+ * @category instances
1943
+ * @since 2.11.0
1944
+ */
1945
+ exports.ChainRecDepthFirst = {
1946
+ URI: exports.URI,
1947
+ map: _map,
1948
+ ap: _ap,
1949
+ chain: exports.flatMap,
1950
+ chainRec: exports._chainRecDepthFirst
1951
+ };
1952
+ /**
1953
+ * @category sequencing
1954
+ * @since 2.11.0
1955
+ */
1956
+ var chainRecBreadthFirst = function (f) {
1957
+ return function (a) {
1958
+ var initial = f(a);
1959
+ var todo = [];
1960
+ var out = [];
1961
+ function go(e) {
1962
+ if (_.isLeft(e)) {
1963
+ f(e.left).forEach(function (v) { return todo.push(v); });
1964
+ }
1965
+ else {
1966
+ out.push(e.right);
1967
+ }
1968
+ }
1969
+ for (var _i = 0, initial_1 = initial; _i < initial_1.length; _i++) {
1970
+ var e = initial_1[_i];
1971
+ go(e);
1972
+ }
1973
+ while (todo.length > 0) {
1974
+ go(todo.shift());
1975
+ }
1976
+ return out;
1977
+ };
1978
+ };
1979
+ exports.chainRecBreadthFirst = chainRecBreadthFirst;
1980
+ /**
1981
+ * @category instances
1982
+ * @since 2.11.0
1983
+ */
1984
+ exports.ChainRecBreadthFirst = {
1985
+ URI: exports.URI,
1986
+ map: _map,
1987
+ ap: _ap,
1988
+ chain: exports.flatMap,
1989
+ chainRec: exports._chainRecBreadthFirst
1990
+ };
1991
+ var _wither = /*#__PURE__*/ (0, Witherable_1.witherDefault)(exports.Traversable, exports.Compactable);
1992
+ var _wilt = /*#__PURE__*/ (0, Witherable_1.wiltDefault)(exports.Traversable, exports.Compactable);
1993
+ /**
1994
+ * @category instances
1995
+ * @since 2.7.0
1996
+ */
1997
+ exports.Witherable = {
1998
+ URI: exports.URI,
1999
+ map: _map,
2000
+ compact: exports.compact,
2001
+ separate: exports.separate,
2002
+ filter: _filter,
2003
+ filterMap: _filterMap,
2004
+ partition: _partition,
2005
+ partitionMap: _partitionMap,
2006
+ reduce: _reduce,
2007
+ foldMap: _foldMap,
2008
+ reduceRight: _reduceRight,
2009
+ traverse: _traverse,
2010
+ sequence: exports.sequence,
2011
+ wither: _wither,
2012
+ wilt: _wilt
2013
+ };
2014
+ /**
2015
+ * Filter values inside a context.
2016
+ *
2017
+ * @example
2018
+ * import { pipe } from 'fp-ts/function'
2019
+ * import * as RA from 'fp-ts/ReadonlyArray'
2020
+ * import * as T from 'fp-ts/Task'
2021
+ *
2022
+ * const filterE = RA.filterE(T.ApplicativePar)
2023
+ * async function test() {
2024
+ * assert.deepStrictEqual(
2025
+ * await pipe(
2026
+ * [-1, 2, 3],
2027
+ * filterE((n) => T.of(n > 0))
2028
+ * )(),
2029
+ * [2, 3]
2030
+ * )
2031
+ * }
2032
+ * test()
2033
+ *
2034
+ * @since 2.11.0
2035
+ */
2036
+ exports.filterE = (0, Witherable_1.filterE)(exports.Witherable);
2037
+ /**
2038
+ * @category instances
2039
+ * @since 2.11.0
2040
+ */
2041
+ exports.FromEither = {
2042
+ URI: exports.URI,
2043
+ fromEither: exports.fromEither
2044
+ };
2045
+ /**
2046
+ * @category lifting
2047
+ * @since 2.11.0
2048
+ */
2049
+ exports.fromEitherK = (0, FromEither_1.fromEitherK)(exports.FromEither);
2050
+ // -------------------------------------------------------------------------------------
2051
+ // unsafe
2052
+ // -------------------------------------------------------------------------------------
2053
+ /**
2054
+ * @category unsafe
2055
+ * @since 2.5.0
2056
+ */
2057
+ exports.unsafeInsertAt = RNEA.unsafeInsertAt;
2058
+ /**
2059
+ * @category unsafe
2060
+ * @since 2.5.0
2061
+ */
2062
+ var unsafeUpdateAt = function (i, a, as) {
2063
+ return (0, exports.isNonEmpty)(as) ? RNEA.unsafeUpdateAt(i, a, as) : as;
2064
+ };
2065
+ exports.unsafeUpdateAt = unsafeUpdateAt;
2066
+ /**
2067
+ * @category unsafe
2068
+ * @since 2.5.0
2069
+ */
2070
+ var unsafeDeleteAt = function (i, as) {
2071
+ var xs = as.slice();
2072
+ xs.splice(i, 1);
2073
+ return xs;
2074
+ };
2075
+ exports.unsafeDeleteAt = unsafeDeleteAt;
2076
+ /**
2077
+ * @category conversions
2078
+ * @since 2.5.0
2079
+ */
2080
+ var toArray = function (as) { return as.slice(); };
2081
+ exports.toArray = toArray;
2082
+ /**
2083
+ * @category conversions
2084
+ * @since 2.5.0
2085
+ */
2086
+ var fromArray = function (as) { return ((0, exports.isEmpty)(as) ? exports.empty : as.slice()); };
2087
+ exports.fromArray = fromArray;
2088
+ // -------------------------------------------------------------------------------------
2089
+ // utils
2090
+ // -------------------------------------------------------------------------------------
2091
+ /**
2092
+ * An empty array
2093
+ *
2094
+ * @since 2.5.0
2095
+ */
2096
+ exports.empty = RNEA.empty;
2097
+ function every(predicate) {
2098
+ return function (as) { return as.every(predicate); };
2099
+ }
2100
+ /**
2101
+ * Check if a predicate holds true for any array member.
2102
+ *
2103
+ * @example
2104
+ * import { some } from 'fp-ts/ReadonlyArray'
2105
+ * import { pipe } from 'fp-ts/function'
2106
+ *
2107
+ * const isPositive = (n: number): boolean => n > 0
2108
+ *
2109
+ * assert.deepStrictEqual(pipe([-1, -2, 3], some(isPositive)), true)
2110
+ * assert.deepStrictEqual(pipe([-1, -2, -3], some(isPositive)), false)
2111
+ *
2112
+ * @since 2.9.0
2113
+ */
2114
+ var some = function (predicate) {
2115
+ return function (as) {
2116
+ return as.some(predicate);
2117
+ };
2118
+ };
2119
+ exports.some = some;
2120
+ /**
2121
+ * Alias of [`some`](#some)
2122
+ *
2123
+ * @since 2.11.0
2124
+ */
2125
+ exports.exists = exports.some;
2126
+ /**
2127
+ * Places an element in between members of a `ReadonlyArray`, then folds the results using the provided `Monoid`.
2128
+ *
2129
+ * @example
2130
+ * import * as S from 'fp-ts/string'
2131
+ * import { intercalate } from 'fp-ts/ReadonlyArray'
2132
+ *
2133
+ * assert.deepStrictEqual(intercalate(S.Monoid)('-')(['a', 'b', 'c']), 'a-b-c')
2134
+ *
2135
+ * @since 2.12.0
2136
+ */
2137
+ var intercalate = function (M) {
2138
+ var intercalateM = RNEA.intercalate(M);
2139
+ return function (middle) { return (0, exports.match)(function () { return M.empty; }, intercalateM(middle)); };
2140
+ };
2141
+ exports.intercalate = intercalate;
2142
+ // -------------------------------------------------------------------------------------
2143
+ // do notation
2144
+ // -------------------------------------------------------------------------------------
2145
+ /**
2146
+ * @category do notation
2147
+ * @since 2.9.0
2148
+ */
2149
+ exports.Do = (0, exports.of)(_.emptyRecord);
2150
+ /**
2151
+ * @category do notation
2152
+ * @since 2.8.0
2153
+ */
2154
+ exports.bindTo = (0, Functor_1.bindTo)(exports.Functor);
2155
+ var let_ = /*#__PURE__*/ (0, Functor_1.let)(exports.Functor);
2156
+ exports.let = let_;
2157
+ /**
2158
+ * @category do notation
2159
+ * @since 2.8.0
2160
+ */
2161
+ exports.bind = (0, Chain_1.bind)(exports.Chain);
2162
+ /**
2163
+ * @category do notation
2164
+ * @since 2.8.0
2165
+ */
2166
+ exports.apS = (0, Apply_1.apS)(exports.Apply);
2167
+ // -------------------------------------------------------------------------------------
2168
+ // legacy
2169
+ // -------------------------------------------------------------------------------------
2170
+ /**
2171
+ * Alias of `flatMap`.
2172
+ *
2173
+ * @category legacy
2174
+ * @since 2.5.0
2175
+ */
2176
+ exports.chain = exports.flatMap;
2177
+ // -------------------------------------------------------------------------------------
2178
+ // deprecated
2179
+ // -------------------------------------------------------------------------------------
2180
+ /**
2181
+ * Use `ReadonlyNonEmptyArray` module instead.
2182
+ *
2183
+ * @category zone of death
2184
+ * @since 2.5.0
2185
+ * @deprecated
2186
+ */
2187
+ exports.range = RNEA.range;
2188
+ /**
2189
+ * Use [`prepend`](#prepend) instead.
2190
+ *
2191
+ * @category zone of death
2192
+ * @since 2.5.0
2193
+ * @deprecated
2194
+ */
2195
+ exports.cons = RNEA.cons;
2196
+ /**
2197
+ * Use [`append`](#append) instead.
2198
+ *
2199
+ * @category zone of death
2200
+ * @since 2.5.0
2201
+ * @deprecated
2202
+ */
2203
+ exports.snoc = RNEA.snoc;
2204
+ /**
2205
+ * Use [`prependAll`](#prependall) instead.
2206
+ *
2207
+ * @category zone of death
2208
+ * @since 2.9.0
2209
+ * @deprecated
2210
+ */
2211
+ exports.prependToAll = exports.prependAll;
2212
+ /**
2213
+ * This instance is deprecated, use small, specific instances instead.
2214
+ * For example if a function needs a `Functor` instance, pass `RA.Functor` instead of `RA.readonlyArray`
2215
+ * (where `RA` is from `import RA from 'fp-ts/ReadonlyArray'`)
2216
+ *
2217
+ * @category zone of death
2218
+ * @since 2.5.0
2219
+ * @deprecated
2220
+ */
2221
+ exports.readonlyArray = {
2222
+ URI: exports.URI,
2223
+ compact: exports.compact,
2224
+ separate: exports.separate,
2225
+ map: _map,
2226
+ ap: _ap,
2227
+ of: exports.of,
2228
+ chain: exports.flatMap,
2229
+ filter: _filter,
2230
+ filterMap: _filterMap,
2231
+ partition: _partition,
2232
+ partitionMap: _partitionMap,
2233
+ mapWithIndex: _mapWithIndex,
2234
+ partitionMapWithIndex: _partitionMapWithIndex,
2235
+ partitionWithIndex: _partitionWithIndex,
2236
+ filterMapWithIndex: _filterMapWithIndex,
2237
+ filterWithIndex: _filterWithIndex,
2238
+ alt: _alt,
2239
+ zero: exports.zero,
2240
+ unfold: exports.unfold,
2241
+ reduce: _reduce,
2242
+ foldMap: _foldMap,
2243
+ reduceRight: _reduceRight,
2244
+ traverse: _traverse,
2245
+ sequence: exports.sequence,
2246
+ reduceWithIndex: _reduceWithIndex,
2247
+ foldMapWithIndex: _foldMapWithIndex,
2248
+ reduceRightWithIndex: _reduceRightWithIndex,
2249
+ traverseWithIndex: _traverseWithIndex,
2250
+ extend: _extend,
2251
+ wither: _wither,
2252
+ wilt: _wilt
2253
+ };