ramda-adjunct 2.34.0

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 (719) hide show
  1. package/.nvmrc +1 -0
  2. package/CHANGELOG.md +973 -0
  3. package/LICENSE.md +25 -0
  4. package/README.md +297 -0
  5. package/SECURITY.md +43 -0
  6. package/dist/RA.node.js +11172 -0
  7. package/dist/RA.node.min.js +2 -0
  8. package/dist/RA.node.min.js.LICENSE.txt +22 -0
  9. package/dist/RA.web.js +11172 -0
  10. package/dist/RA.web.min.js +2 -0
  11. package/dist/RA.web.min.js.LICENSE.txt +22 -0
  12. package/dist/RA.web.standalone.js +27797 -0
  13. package/dist/RA.web.standalone.min.js +2 -0
  14. package/dist/RA.web.standalone.min.js.LICENSE.txt +22 -0
  15. package/es/Y.js +38 -0
  16. package/es/allEqual.js +25 -0
  17. package/es/allEqualTo.js +26 -0
  18. package/es/allIdentical.js +24 -0
  19. package/es/allIdenticalTo.js +26 -0
  20. package/es/allP.js +26 -0
  21. package/es/allSettledP.js +29 -0
  22. package/es/allUnique.js +23 -0
  23. package/es/anyP.js +28 -0
  24. package/es/appendFlipped.js +23 -0
  25. package/es/argsPass.js +38 -0
  26. package/es/async.js +57 -0
  27. package/es/cata.js +101 -0
  28. package/es/catchP.js +24 -0
  29. package/es/ceil.js +26 -0
  30. package/es/compact.js +21 -0
  31. package/es/concatAll.js +30 -0
  32. package/es/concatRight.js +29 -0
  33. package/es/contained.js +29 -0
  34. package/es/curryRight.js +24 -0
  35. package/es/curryRightN.js +32 -0
  36. package/es/defaultWhen.js +25 -0
  37. package/es/delayP.js +44 -0
  38. package/es/dispatch.js +75 -0
  39. package/es/divideNum.js +19 -0
  40. package/es/dropArgs.js +22 -0
  41. package/es/ensureArray.js +22 -0
  42. package/es/escapeRegExp.js +20 -0
  43. package/es/fantasy-land/Identity.js +309 -0
  44. package/es/fantasy-land/mapping.js +20 -0
  45. package/es/fantasy-land/traits.js +41 -0
  46. package/es/fantasy-land/util.js +11 -0
  47. package/es/filterIndexed.js +27 -0
  48. package/es/findOr.js +28 -0
  49. package/es/flattenDepth.js +50 -0
  50. package/es/flattenPath.js +27 -0
  51. package/es/flattenProp.js +28 -0
  52. package/es/floor.js +25 -0
  53. package/es/fnull.js +37 -0
  54. package/es/hasPath.js +38 -0
  55. package/es/inRange.js +29 -0
  56. package/es/index.js +252 -0
  57. package/es/internal/ap.js +20 -0
  58. package/es/internal/compareLength.js +5 -0
  59. package/es/internal/isOfTypeObject.js +7 -0
  60. package/es/internal/makeFlat.js +46 -0
  61. package/es/internal/ponyfills/Array.from.js +40 -0
  62. package/es/internal/ponyfills/Math.sign.js +5 -0
  63. package/es/internal/ponyfills/Math.trunc.js +14 -0
  64. package/es/internal/ponyfills/Number.MAX_SAFE_INTEGER.js +2 -0
  65. package/es/internal/ponyfills/Number.MIN_SAFE_INTEGER.js +2 -0
  66. package/es/internal/ponyfills/Number.isFinite.js +5 -0
  67. package/es/internal/ponyfills/Number.isInteger.js +4 -0
  68. package/es/internal/ponyfills/Number.isNaN.js +5 -0
  69. package/es/internal/ponyfills/Number.isSafeInteger.js +7 -0
  70. package/es/internal/ponyfills/Promise.allSettled.js +38 -0
  71. package/es/internal/ponyfills/Promise.any.js +77 -0
  72. package/es/internal/ponyfills/String.padEnd.js +24 -0
  73. package/es/internal/ponyfills/String.padStart.js +26 -0
  74. package/es/internal/ponyfills/String.repeat.js +46 -0
  75. package/es/internal/ponyfills/String.replaceAll.js +34 -0
  76. package/es/internal/ponyfills/String.trimEnd.js +3 -0
  77. package/es/internal/ponyfills/String.trimStart.js +3 -0
  78. package/es/invoke.js +20 -0
  79. package/es/invokeArgs.js +30 -0
  80. package/es/isArray.js +22 -0
  81. package/es/isArrayLike.js +87 -0
  82. package/es/isAsyncFunction.js +22 -0
  83. package/es/isBigInt.js +23 -0
  84. package/es/isBoolean.js +21 -0
  85. package/es/isDate.js +20 -0
  86. package/es/isEmptyArray.js +26 -0
  87. package/es/isEmptyString.js +27 -0
  88. package/es/isError.js +20 -0
  89. package/es/isEven.js +29 -0
  90. package/es/isFalse.js +29 -0
  91. package/es/isFalsy.js +26 -0
  92. package/es/isFinite.js +33 -0
  93. package/es/isFloat.js +34 -0
  94. package/es/isFunction.js +26 -0
  95. package/es/isGeneratorFunction.js +33 -0
  96. package/es/isIndexed.js +21 -0
  97. package/es/isInteger.js +35 -0
  98. package/es/isInteger32.js +28 -0
  99. package/es/isIterable.js +33 -0
  100. package/es/isMap.js +23 -0
  101. package/es/isNaN.js +41 -0
  102. package/es/isNaturalNumber.js +25 -0
  103. package/es/isNegative.js +25 -0
  104. package/es/isNegativeZero.js +22 -0
  105. package/es/isNilOrEmpty.js +25 -0
  106. package/es/isNonEmptyArray.js +27 -0
  107. package/es/isNonEmptyString.js +30 -0
  108. package/es/isNonNegative.js +28 -0
  109. package/es/isNonPositive.js +28 -0
  110. package/es/isNotArray.js +22 -0
  111. package/es/isNotArrayLike.js +24 -0
  112. package/es/isNotAsyncFunction.js +27 -0
  113. package/es/isNotBoolean.js +22 -0
  114. package/es/isNotDate.js +21 -0
  115. package/es/isNotEmpty.js +25 -0
  116. package/es/isNotFinite.js +29 -0
  117. package/es/isNotFloat.js +33 -0
  118. package/es/isNotFunction.js +29 -0
  119. package/es/isNotGeneratorFunction.js +27 -0
  120. package/es/isNotInteger.js +34 -0
  121. package/es/isNotMap.js +24 -0
  122. package/es/isNotNaN.js +35 -0
  123. package/es/isNotNil.js +22 -0
  124. package/es/isNotNilOrEmpty.js +26 -0
  125. package/es/isNotNull.js +22 -0
  126. package/es/isNotNumber.js +23 -0
  127. package/es/isNotObj.js +29 -0
  128. package/es/isNotObjLike.js +29 -0
  129. package/es/isNotPair.js +25 -0
  130. package/es/isNotPlainObj.js +35 -0
  131. package/es/isNotPrimitive.js +22 -0
  132. package/es/isNotRegExp.js +22 -0
  133. package/es/isNotSet.js +23 -0
  134. package/es/isNotString.js +21 -0
  135. package/es/isNotUndefined.js +22 -0
  136. package/es/isNotValidDate.js +22 -0
  137. package/es/isNotValidNumber.js +25 -0
  138. package/es/isNull.js +21 -0
  139. package/es/isNumber.js +23 -0
  140. package/es/isObj.js +31 -0
  141. package/es/isObjLike.js +30 -0
  142. package/es/isOdd.js +24 -0
  143. package/es/isPair.js +25 -0
  144. package/es/isPlainObj.js +52 -0
  145. package/es/isPositive.js +24 -0
  146. package/es/isPositiveZero.js +22 -0
  147. package/es/isPrimitive.js +31 -0
  148. package/es/isPromise.js +27 -0
  149. package/es/isPrototypeOf.js +34 -0
  150. package/es/isRegExp.js +21 -0
  151. package/es/isSafeInteger.js +34 -0
  152. package/es/isSentinelValue.js +26 -0
  153. package/es/isSet.js +22 -0
  154. package/es/isSparseArray.js +30 -0
  155. package/es/isString.js +20 -0
  156. package/es/isSymbol.js +27 -0
  157. package/es/isThenable.js +26 -0
  158. package/es/isTrue.js +25 -0
  159. package/es/isTruthy.js +27 -0
  160. package/es/isUndefined.js +22 -0
  161. package/es/isValidDate.js +26 -0
  162. package/es/isValidNumber.js +26 -0
  163. package/es/lastP.js +63 -0
  164. package/es/lengthEq.js +22 -0
  165. package/es/lengthGt.js +22 -0
  166. package/es/lengthGte.js +24 -0
  167. package/es/lengthLt.js +22 -0
  168. package/es/lengthLte.js +23 -0
  169. package/es/lengthNotEq.js +22 -0
  170. package/es/lensEq.js +27 -0
  171. package/es/lensIso.js +55 -0
  172. package/es/lensNotEq.js +26 -0
  173. package/es/lensNotSatisfy.js +28 -0
  174. package/es/lensSatisfies.js +31 -0
  175. package/es/lensTraverse.js +42 -0
  176. package/es/liftF.js +37 -0
  177. package/es/liftFN.js +47 -0
  178. package/es/list.js +19 -0
  179. package/es/mapIndexed.js +26 -0
  180. package/es/mergePath.js +30 -0
  181. package/es/mergePaths.js +27 -0
  182. package/es/mergeProp.js +30 -0
  183. package/es/mergeProps.js +26 -0
  184. package/es/mergeRight.js +26 -0
  185. package/es/move.js +25 -0
  186. package/es/nand.js +27 -0
  187. package/es/neither.js +39 -0
  188. package/es/noneP.js +28 -0
  189. package/es/nonePass.js +31 -0
  190. package/es/noop.js +19 -0
  191. package/es/nor.js +28 -0
  192. package/es/notAllPass.js +31 -0
  193. package/es/notAllUnique.js +23 -0
  194. package/es/notBoth.js +39 -0
  195. package/es/notEqual.js +30 -0
  196. package/es/omitBy.js +26 -0
  197. package/es/omitIndexes.js +27 -0
  198. package/es/overlaps.js +29 -0
  199. package/es/padCharsEnd.js +31 -0
  200. package/es/padCharsStart.js +29 -0
  201. package/es/padEnd.js +24 -0
  202. package/es/padStart.js +22 -0
  203. package/es/pathNotEq.js +32 -0
  204. package/es/pathOrLazy.js +25 -0
  205. package/es/paths.js +27 -0
  206. package/es/pickIndexes.js +30 -0
  207. package/es/propNotEq.js +29 -0
  208. package/es/rangeStep.js +36 -0
  209. package/es/reduceIndexed.js +30 -0
  210. package/es/reduceP.js +111 -0
  211. package/es/reduceRightP.js +117 -0
  212. package/es/rejectP.js +23 -0
  213. package/es/renameKeyWith.js +28 -0
  214. package/es/renameKeys.js +42 -0
  215. package/es/renameKeysWith.js +26 -0
  216. package/es/repeatStr.js +24 -0
  217. package/es/replaceAll.js +29 -0
  218. package/es/resolveP.js +29 -0
  219. package/es/round.js +24 -0
  220. package/es/seq.js +44 -0
  221. package/es/sign.js +27 -0
  222. package/es/skipTake.js +22 -0
  223. package/es/sliceFrom.js +22 -0
  224. package/es/sliceTo.js +22 -0
  225. package/es/sortByProps.js +52 -0
  226. package/es/spreadPath.js +25 -0
  227. package/es/spreadProp.js +25 -0
  228. package/es/stubArray.js +19 -0
  229. package/es/stubNull.js +18 -0
  230. package/es/stubObj.js +20 -0
  231. package/es/stubString.js +18 -0
  232. package/es/stubUndefined.js +19 -0
  233. package/es/subtractNum.js +19 -0
  234. package/es/thenCatchP.js +26 -0
  235. package/es/thenP.js +28 -0
  236. package/es/toArray.js +27 -0
  237. package/es/toInteger32.js +24 -0
  238. package/es/toUinteger32.js +26 -0
  239. package/es/trimCharsEnd.js +22 -0
  240. package/es/trimCharsStart.js +22 -0
  241. package/es/trimEnd.js +23 -0
  242. package/es/trimStart.js +22 -0
  243. package/es/trunc.js +27 -0
  244. package/es/unzipObjWith.js +26 -0
  245. package/es/viewOr.js +30 -0
  246. package/es/weave.js +36 -0
  247. package/es/weaveLazy.js +38 -0
  248. package/es/zipObjWith.js +26 -0
  249. package/lib/Y.js +44 -0
  250. package/lib/allEqual.js +35 -0
  251. package/lib/allEqualTo.js +32 -0
  252. package/lib/allIdentical.js +33 -0
  253. package/lib/allIdenticalTo.js +32 -0
  254. package/lib/allP.js +32 -0
  255. package/lib/allSettledP.js +41 -0
  256. package/lib/allUnique.js +32 -0
  257. package/lib/anyP.js +47 -0
  258. package/lib/appendFlipped.js +29 -0
  259. package/lib/argsPass.js +48 -0
  260. package/lib/async.js +67 -0
  261. package/lib/cata.js +110 -0
  262. package/lib/catchP.js +30 -0
  263. package/lib/ceil.js +32 -0
  264. package/lib/compact.js +30 -0
  265. package/lib/concatAll.js +40 -0
  266. package/lib/concatRight.js +35 -0
  267. package/lib/contained.js +35 -0
  268. package/lib/curryRight.js +33 -0
  269. package/lib/curryRightN.js +38 -0
  270. package/lib/defaultWhen.js +31 -0
  271. package/lib/delayP.js +54 -0
  272. package/lib/dispatch.js +50 -0
  273. package/lib/divideNum.js +25 -0
  274. package/lib/dropArgs.js +28 -0
  275. package/lib/ensureArray.js +31 -0
  276. package/lib/escapeRegExp.js +29 -0
  277. package/lib/fantasy-land/Identity.js +323 -0
  278. package/lib/fantasy-land/mapping.js +44 -0
  279. package/lib/fantasy-land/traits.js +77 -0
  280. package/lib/fantasy-land/util.js +21 -0
  281. package/lib/filterIndexed.js +33 -0
  282. package/lib/findOr.js +34 -0
  283. package/lib/flattenDepth.js +58 -0
  284. package/lib/flattenPath.js +33 -0
  285. package/lib/flattenProp.js +37 -0
  286. package/lib/floor.js +31 -0
  287. package/lib/fnull.js +47 -0
  288. package/lib/hasPath.js +47 -0
  289. package/lib/inRange.js +37 -0
  290. package/lib/index.js +863 -0
  291. package/lib/internal/ap.js +37 -0
  292. package/lib/internal/compareLength.js +12 -0
  293. package/lib/internal/isOfTypeObject.js +13 -0
  294. package/lib/internal/makeFlat.js +54 -0
  295. package/lib/internal/ponyfills/Array.from.js +52 -0
  296. package/lib/internal/ponyfills/Math.sign.js +11 -0
  297. package/lib/internal/ponyfills/Math.trunc.js +22 -0
  298. package/lib/internal/ponyfills/Number.MAX_SAFE_INTEGER.js +7 -0
  299. package/lib/internal/ponyfills/Number.MIN_SAFE_INTEGER.js +7 -0
  300. package/lib/internal/ponyfills/Number.isFinite.js +15 -0
  301. package/lib/internal/ponyfills/Number.isInteger.js +14 -0
  302. package/lib/internal/ponyfills/Number.isNaN.js +15 -0
  303. package/lib/internal/ponyfills/Number.isSafeInteger.js +18 -0
  304. package/lib/internal/ponyfills/Promise.allSettled.js +48 -0
  305. package/lib/internal/ponyfills/Promise.any.js +89 -0
  306. package/lib/internal/ponyfills/String.padEnd.js +34 -0
  307. package/lib/internal/ponyfills/String.padStart.js +36 -0
  308. package/lib/internal/ponyfills/String.repeat.js +55 -0
  309. package/lib/internal/ponyfills/String.replaceAll.js +44 -0
  310. package/lib/internal/ponyfills/String.trimEnd.js +10 -0
  311. package/lib/internal/ponyfills/String.trimStart.js +10 -0
  312. package/lib/invoke.js +29 -0
  313. package/lib/invokeArgs.js +40 -0
  314. package/lib/isArray.js +31 -0
  315. package/lib/isArrayLike.js +98 -0
  316. package/lib/isAsyncFunction.js +28 -0
  317. package/lib/isBigInt.js +29 -0
  318. package/lib/isBoolean.js +27 -0
  319. package/lib/isDate.js +26 -0
  320. package/lib/isEmptyArray.js +35 -0
  321. package/lib/isEmptyString.js +33 -0
  322. package/lib/isError.js +26 -0
  323. package/lib/isEven.js +39 -0
  324. package/lib/isFalse.js +35 -0
  325. package/lib/isFalsy.js +35 -0
  326. package/lib/isFinite.js +46 -0
  327. package/lib/isFloat.js +44 -0
  328. package/lib/isFunction.js +36 -0
  329. package/lib/isGeneratorFunction.js +40 -0
  330. package/lib/isIndexed.js +31 -0
  331. package/lib/isInteger.js +47 -0
  332. package/lib/isInteger32.js +37 -0
  333. package/lib/isIterable.js +42 -0
  334. package/lib/isMap.js +29 -0
  335. package/lib/isNaN.js +54 -0
  336. package/lib/isNaturalNumber.js +35 -0
  337. package/lib/isNegative.js +34 -0
  338. package/lib/isNegativeZero.js +28 -0
  339. package/lib/isNilOrEmpty.js +31 -0
  340. package/lib/isNonEmptyArray.js +37 -0
  341. package/lib/isNonEmptyString.js +41 -0
  342. package/lib/isNonNegative.js +37 -0
  343. package/lib/isNonPositive.js +37 -0
  344. package/lib/isNotArray.js +31 -0
  345. package/lib/isNotArrayLike.js +33 -0
  346. package/lib/isNotAsyncFunction.js +36 -0
  347. package/lib/isNotBoolean.js +31 -0
  348. package/lib/isNotDate.js +30 -0
  349. package/lib/isNotEmpty.js +31 -0
  350. package/lib/isNotFinite.js +38 -0
  351. package/lib/isNotFloat.js +42 -0
  352. package/lib/isNotFunction.js +38 -0
  353. package/lib/isNotGeneratorFunction.js +36 -0
  354. package/lib/isNotInteger.js +43 -0
  355. package/lib/isNotMap.js +33 -0
  356. package/lib/isNotNaN.js +44 -0
  357. package/lib/isNotNil.js +28 -0
  358. package/lib/isNotNilOrEmpty.js +35 -0
  359. package/lib/isNotNull.js +31 -0
  360. package/lib/isNotNumber.js +32 -0
  361. package/lib/isNotObj.js +38 -0
  362. package/lib/isNotObjLike.js +38 -0
  363. package/lib/isNotPair.js +34 -0
  364. package/lib/isNotPlainObj.js +44 -0
  365. package/lib/isNotPrimitive.js +31 -0
  366. package/lib/isNotRegExp.js +31 -0
  367. package/lib/isNotSet.js +32 -0
  368. package/lib/isNotString.js +30 -0
  369. package/lib/isNotUndefined.js +31 -0
  370. package/lib/isNotValidDate.js +31 -0
  371. package/lib/isNotValidNumber.js +34 -0
  372. package/lib/isNull.js +27 -0
  373. package/lib/isNumber.js +29 -0
  374. package/lib/isObj.js +42 -0
  375. package/lib/isObjLike.js +40 -0
  376. package/lib/isOdd.js +33 -0
  377. package/lib/isPair.js +34 -0
  378. package/lib/isPlainObj.js +64 -0
  379. package/lib/isPositive.js +33 -0
  380. package/lib/isPositiveZero.js +28 -0
  381. package/lib/isPrimitive.js +47 -0
  382. package/lib/isPromise.js +36 -0
  383. package/lib/isPrototypeOf.js +43 -0
  384. package/lib/isRegExp.js +27 -0
  385. package/lib/isSafeInteger.js +46 -0
  386. package/lib/isSentinelValue.js +35 -0
  387. package/lib/isSet.js +28 -0
  388. package/lib/isSparseArray.js +39 -0
  389. package/lib/isString.js +26 -0
  390. package/lib/isSymbol.js +33 -0
  391. package/lib/isThenable.js +35 -0
  392. package/lib/isTrue.js +31 -0
  393. package/lib/isTruthy.js +33 -0
  394. package/lib/isUndefined.js +31 -0
  395. package/lib/isValidDate.js +36 -0
  396. package/lib/isValidNumber.js +36 -0
  397. package/lib/lastP.js +76 -0
  398. package/lib/lengthEq.js +31 -0
  399. package/lib/lengthGt.js +31 -0
  400. package/lib/lengthGte.js +33 -0
  401. package/lib/lengthLt.js +31 -0
  402. package/lib/lengthLte.js +32 -0
  403. package/lib/lengthNotEq.js +31 -0
  404. package/lib/lensEq.js +33 -0
  405. package/lib/lensIso.js +62 -0
  406. package/lib/lensNotEq.js +35 -0
  407. package/lib/lensNotSatisfy.js +37 -0
  408. package/lib/lensSatisfies.js +40 -0
  409. package/lib/lensTraverse.js +51 -0
  410. package/lib/liftF.js +46 -0
  411. package/lib/liftFN.js +56 -0
  412. package/lib/list.js +25 -0
  413. package/lib/mapIndexed.js +32 -0
  414. package/lib/mergePath.js +39 -0
  415. package/lib/mergePaths.js +36 -0
  416. package/lib/mergeProp.js +39 -0
  417. package/lib/mergeProps.js +32 -0
  418. package/lib/mergeRight.js +32 -0
  419. package/lib/move.js +31 -0
  420. package/lib/nand.js +33 -0
  421. package/lib/neither.js +45 -0
  422. package/lib/noneP.js +39 -0
  423. package/lib/nonePass.js +37 -0
  424. package/lib/noop.js +28 -0
  425. package/lib/nor.js +34 -0
  426. package/lib/notAllPass.js +37 -0
  427. package/lib/notAllUnique.js +32 -0
  428. package/lib/notBoth.js +45 -0
  429. package/lib/notEqual.js +36 -0
  430. package/lib/omitBy.js +32 -0
  431. package/lib/omitIndexes.js +34 -0
  432. package/lib/overlaps.js +38 -0
  433. package/lib/padCharsEnd.js +44 -0
  434. package/lib/padCharsStart.js +42 -0
  435. package/lib/padEnd.js +32 -0
  436. package/lib/padStart.js +30 -0
  437. package/lib/pathNotEq.js +38 -0
  438. package/lib/pathOrLazy.js +31 -0
  439. package/lib/paths.js +33 -0
  440. package/lib/pickIndexes.js +37 -0
  441. package/lib/propNotEq.js +35 -0
  442. package/lib/rangeStep.js +45 -0
  443. package/lib/reduceIndexed.js +36 -0
  444. package/lib/reduceP.js +122 -0
  445. package/lib/reduceRightP.js +129 -0
  446. package/lib/rejectP.js +29 -0
  447. package/lib/renameKeyWith.js +37 -0
  448. package/lib/renameKeys.js +51 -0
  449. package/lib/renameKeysWith.js +32 -0
  450. package/lib/repeatStr.js +37 -0
  451. package/lib/replaceAll.js +42 -0
  452. package/lib/resolveP.js +35 -0
  453. package/lib/round.js +30 -0
  454. package/lib/seq.js +50 -0
  455. package/lib/sign.js +39 -0
  456. package/lib/skipTake.js +28 -0
  457. package/lib/sliceFrom.js +28 -0
  458. package/lib/sliceTo.js +28 -0
  459. package/lib/sortByProps.js +58 -0
  460. package/lib/spreadPath.js +31 -0
  461. package/lib/spreadProp.js +34 -0
  462. package/lib/stubArray.js +25 -0
  463. package/lib/stubNull.js +24 -0
  464. package/lib/stubObj.js +26 -0
  465. package/lib/stubString.js +24 -0
  466. package/lib/stubUndefined.js +25 -0
  467. package/lib/subtractNum.js +25 -0
  468. package/lib/thenCatchP.js +33 -0
  469. package/lib/thenP.js +34 -0
  470. package/lib/toArray.js +40 -0
  471. package/lib/toInteger32.js +30 -0
  472. package/lib/toUinteger32.js +32 -0
  473. package/lib/trimCharsEnd.js +31 -0
  474. package/lib/trimCharsStart.js +31 -0
  475. package/lib/trimEnd.js +36 -0
  476. package/lib/trimStart.js +35 -0
  477. package/lib/trunc.js +39 -0
  478. package/lib/unzipObjWith.js +35 -0
  479. package/lib/viewOr.js +36 -0
  480. package/lib/weave.js +42 -0
  481. package/lib/weaveLazy.js +44 -0
  482. package/lib/zipObjWith.js +32 -0
  483. package/package.json +204 -0
  484. package/src/Y.js +32 -0
  485. package/src/allEqual.js +28 -0
  486. package/src/allEqualTo.js +25 -0
  487. package/src/allIdentical.js +26 -0
  488. package/src/allIdenticalTo.js +25 -0
  489. package/src/allP.js +27 -0
  490. package/src/allSettledP.js +34 -0
  491. package/src/allUnique.js +25 -0
  492. package/src/anyP.js +33 -0
  493. package/src/appendFlipped.js +24 -0
  494. package/src/argsPass.js +40 -0
  495. package/src/async.js +60 -0
  496. package/src/cata.js +86 -0
  497. package/src/catchP.js +25 -0
  498. package/src/ceil.js +28 -0
  499. package/src/compact.js +23 -0
  500. package/src/concatAll.js +34 -0
  501. package/src/concatRight.js +30 -0
  502. package/src/contained.js +30 -0
  503. package/src/curryRight.js +26 -0
  504. package/src/curryRightN.js +29 -0
  505. package/src/defaultWhen.js +26 -0
  506. package/src/delayP.js +45 -0
  507. package/src/dispatch.js +74 -0
  508. package/src/divideNum.js +20 -0
  509. package/src/dropArgs.js +23 -0
  510. package/src/ensureArray.js +24 -0
  511. package/src/escapeRegExp.js +22 -0
  512. package/src/fantasy-land/Identity.js +270 -0
  513. package/src/fantasy-land/mapping.js +20 -0
  514. package/src/fantasy-land/traits.js +57 -0
  515. package/src/fantasy-land/util.js +23 -0
  516. package/src/filterIndexed.js +28 -0
  517. package/src/findOr.js +30 -0
  518. package/src/flattenDepth.js +39 -0
  519. package/src/flattenPath.js +26 -0
  520. package/src/flattenProp.js +28 -0
  521. package/src/floor.js +27 -0
  522. package/src/fnull.js +38 -0
  523. package/src/hasPath.js +40 -0
  524. package/src/inRange.js +34 -0
  525. package/src/index.js +241 -0
  526. package/src/internal/ap.js +30 -0
  527. package/src/internal/compareLength.js +7 -0
  528. package/src/internal/isOfTypeObject.js +3 -0
  529. package/src/internal/makeFlat.js +42 -0
  530. package/src/internal/ponyfills/Array.from.js +34 -0
  531. package/src/internal/ponyfills/Math.sign.js +3 -0
  532. package/src/internal/ponyfills/Math.trunc.js +14 -0
  533. package/src/internal/ponyfills/Number.MAX_SAFE_INTEGER.js +3 -0
  534. package/src/internal/ponyfills/Number.MIN_SAFE_INTEGER.js +3 -0
  535. package/src/internal/ponyfills/Number.isFinite.js +8 -0
  536. package/src/internal/ponyfills/Number.isInteger.js +10 -0
  537. package/src/internal/ponyfills/Number.isNaN.js +8 -0
  538. package/src/internal/ponyfills/Number.isSafeInteger.js +11 -0
  539. package/src/internal/ponyfills/Promise.allSettled.js +18 -0
  540. package/src/internal/ponyfills/Promise.any.js +29 -0
  541. package/src/internal/ponyfills/String.padEnd.js +25 -0
  542. package/src/internal/ponyfills/String.padStart.js +27 -0
  543. package/src/internal/ponyfills/String.repeat.js +49 -0
  544. package/src/internal/ponyfills/String.replaceAll.js +44 -0
  545. package/src/internal/ponyfills/String.trimEnd.js +5 -0
  546. package/src/internal/ponyfills/String.trimStart.js +5 -0
  547. package/src/invoke.js +22 -0
  548. package/src/invokeArgs.js +36 -0
  549. package/src/isArray.js +27 -0
  550. package/src/isArrayLike.js +79 -0
  551. package/src/isAsyncFunction.js +23 -0
  552. package/src/isBigInt.js +24 -0
  553. package/src/isBoolean.js +22 -0
  554. package/src/isDate.js +21 -0
  555. package/src/isEmptyArray.js +28 -0
  556. package/src/isEmptyString.js +28 -0
  557. package/src/isError.js +21 -0
  558. package/src/isEven.js +31 -0
  559. package/src/isFalse.js +31 -0
  560. package/src/isFalsy.js +28 -0
  561. package/src/isFinite.js +37 -0
  562. package/src/isFloat.js +36 -0
  563. package/src/isFunction.js +32 -0
  564. package/src/isGeneratorFunction.js +43 -0
  565. package/src/isIndexed.js +24 -0
  566. package/src/isInteger.js +40 -0
  567. package/src/isInteger32.js +28 -0
  568. package/src/isIterable.js +37 -0
  569. package/src/isMap.js +25 -0
  570. package/src/isNaN.js +45 -0
  571. package/src/isNaturalNumber.js +28 -0
  572. package/src/isNegative.js +27 -0
  573. package/src/isNegativeZero.js +23 -0
  574. package/src/isNilOrEmpty.js +26 -0
  575. package/src/isNonEmptyArray.js +29 -0
  576. package/src/isNonEmptyString.js +32 -0
  577. package/src/isNonNegative.js +30 -0
  578. package/src/isNonPositive.js +30 -0
  579. package/src/isNotArray.js +24 -0
  580. package/src/isNotArrayLike.js +26 -0
  581. package/src/isNotAsyncFunction.js +27 -0
  582. package/src/isNotBoolean.js +24 -0
  583. package/src/isNotDate.js +23 -0
  584. package/src/isNotEmpty.js +26 -0
  585. package/src/isNotFinite.js +31 -0
  586. package/src/isNotFloat.js +35 -0
  587. package/src/isNotFunction.js +29 -0
  588. package/src/isNotGeneratorFunction.js +27 -0
  589. package/src/isNotInteger.js +36 -0
  590. package/src/isNotMap.js +27 -0
  591. package/src/isNotNaN.js +37 -0
  592. package/src/isNotNil.js +23 -0
  593. package/src/isNotNilOrEmpty.js +28 -0
  594. package/src/isNotNull.js +24 -0
  595. package/src/isNotNumber.js +25 -0
  596. package/src/isNotObj.js +29 -0
  597. package/src/isNotObjLike.js +29 -0
  598. package/src/isNotPair.js +27 -0
  599. package/src/isNotPlainObj.js +35 -0
  600. package/src/isNotPrimitive.js +25 -0
  601. package/src/isNotRegExp.js +24 -0
  602. package/src/isNotSet.js +26 -0
  603. package/src/isNotString.js +23 -0
  604. package/src/isNotUndefined.js +24 -0
  605. package/src/isNotValidDate.js +24 -0
  606. package/src/isNotValidNumber.js +27 -0
  607. package/src/isNull.js +22 -0
  608. package/src/isNumber.js +24 -0
  609. package/src/isObj.js +31 -0
  610. package/src/isObjLike.js +30 -0
  611. package/src/isOdd.js +29 -0
  612. package/src/isPair.js +27 -0
  613. package/src/isPlainObj.js +65 -0
  614. package/src/isPositive.js +26 -0
  615. package/src/isPositiveZero.js +23 -0
  616. package/src/isPrimitive.js +45 -0
  617. package/src/isPromise.js +32 -0
  618. package/src/isPrototypeOf.js +36 -0
  619. package/src/isRegExp.js +22 -0
  620. package/src/isSafeInteger.js +40 -0
  621. package/src/isSentinelValue.js +26 -0
  622. package/src/isSet.js +24 -0
  623. package/src/isSparseArray.js +43 -0
  624. package/src/isString.js +21 -0
  625. package/src/isSymbol.js +29 -0
  626. package/src/isThenable.js +28 -0
  627. package/src/isTrue.js +27 -0
  628. package/src/isTruthy.js +28 -0
  629. package/src/isUndefined.js +24 -0
  630. package/src/isValidDate.js +29 -0
  631. package/src/isValidNumber.js +28 -0
  632. package/src/lastP.js +54 -0
  633. package/src/lengthEq.js +24 -0
  634. package/src/lengthGt.js +24 -0
  635. package/src/lengthGte.js +26 -0
  636. package/src/lengthLt.js +24 -0
  637. package/src/lengthLte.js +25 -0
  638. package/src/lengthNotEq.js +24 -0
  639. package/src/lensEq.js +28 -0
  640. package/src/lensIso.js +51 -0
  641. package/src/lensNotEq.js +28 -0
  642. package/src/lensNotSatisfy.js +30 -0
  643. package/src/lensSatisfies.js +33 -0
  644. package/src/lensTraverse.js +44 -0
  645. package/src/liftF.js +37 -0
  646. package/src/liftFN.js +45 -0
  647. package/src/list.js +20 -0
  648. package/src/mapIndexed.js +27 -0
  649. package/src/mergePath.js +32 -0
  650. package/src/mergePaths.js +29 -0
  651. package/src/mergeProp.js +30 -0
  652. package/src/mergeProps.js +27 -0
  653. package/src/mergeRight.js +27 -0
  654. package/src/move.js +26 -0
  655. package/src/nand.js +27 -0
  656. package/src/neither.js +38 -0
  657. package/src/noneP.js +35 -0
  658. package/src/nonePass.js +32 -0
  659. package/src/noop.js +21 -0
  660. package/src/nor.js +28 -0
  661. package/src/notAllPass.js +32 -0
  662. package/src/notAllUnique.js +25 -0
  663. package/src/notBoth.js +38 -0
  664. package/src/notEqual.js +31 -0
  665. package/src/omitBy.js +25 -0
  666. package/src/omitIndexes.js +27 -0
  667. package/src/overlaps.js +32 -0
  668. package/src/padCharsEnd.js +37 -0
  669. package/src/padCharsStart.js +35 -0
  670. package/src/padEnd.js +25 -0
  671. package/src/padStart.js +23 -0
  672. package/src/pathNotEq.js +31 -0
  673. package/src/pathOrLazy.js +30 -0
  674. package/src/paths.js +26 -0
  675. package/src/pickIndexes.js +30 -0
  676. package/src/propNotEq.js +30 -0
  677. package/src/rangeStep.js +37 -0
  678. package/src/reduceIndexed.js +31 -0
  679. package/src/reduceP.js +96 -0
  680. package/src/reduceRightP.js +101 -0
  681. package/src/rejectP.js +24 -0
  682. package/src/renameKeyWith.js +30 -0
  683. package/src/renameKeys.js +40 -0
  684. package/src/renameKeysWith.js +27 -0
  685. package/src/repeatStr.js +30 -0
  686. package/src/replaceAll.js +35 -0
  687. package/src/resolveP.js +28 -0
  688. package/src/round.js +26 -0
  689. package/src/seq.js +38 -0
  690. package/src/sign.js +33 -0
  691. package/src/skipTake.js +33 -0
  692. package/src/sliceFrom.js +23 -0
  693. package/src/sliceTo.js +23 -0
  694. package/src/sortByProps.js +31 -0
  695. package/src/spreadPath.js +26 -0
  696. package/src/spreadProp.js +25 -0
  697. package/src/stubArray.js +18 -0
  698. package/src/stubNull.js +19 -0
  699. package/src/stubObj.js +19 -0
  700. package/src/stubString.js +19 -0
  701. package/src/stubUndefined.js +19 -0
  702. package/src/subtractNum.js +20 -0
  703. package/src/thenCatchP.js +27 -0
  704. package/src/thenP.js +29 -0
  705. package/src/toArray.js +32 -0
  706. package/src/toInteger32.js +22 -0
  707. package/src/toUinteger32.js +26 -0
  708. package/src/trimCharsEnd.js +25 -0
  709. package/src/trimCharsStart.js +25 -0
  710. package/src/trimEnd.js +30 -0
  711. package/src/trimStart.js +29 -0
  712. package/src/trunc.js +33 -0
  713. package/src/unzipObjWith.js +40 -0
  714. package/src/viewOr.js +32 -0
  715. package/src/weave.js +35 -0
  716. package/src/weaveLazy.js +37 -0
  717. package/src/zipObjWith.js +27 -0
  718. package/tonicExample.js +4 -0
  719. package/types/index.d.ts +1553 -0
@@ -0,0 +1,28 @@
1
+ import { curryN } from 'ramda';
2
+ import toInteger32 from './toInteger32';
3
+ /**
4
+ * Checks whether the passed value is a signed 32 bit integer.
5
+ *
6
+ * @func isInteger32
7
+ * @aliases isInt32
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.32.0|v2.32.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.toInteger32|toInteger32}
15
+ * @example
16
+ *
17
+ * RA.isInteger32(0); //=> true
18
+ * RA.isInteger32((-2) ** 31); //=> true
19
+ *
20
+ * RA.isInteger32(Infinity); //=> false
21
+ * RA.isInteger32(NaN); //=> false
22
+ * RA.isInteger32(2 ** 31); //=> false
23
+ */
24
+
25
+ var isInteger32 = curryN(1, function (val) {
26
+ return toInteger32(val) === val;
27
+ });
28
+ export default isInteger32;
@@ -0,0 +1,33 @@
1
+ import { hasIn, curryN } from 'ramda';
2
+ import isFunction from './isFunction';
3
+ /**
4
+ * Checks whether the passed value is iterable.
5
+ *
6
+ * @func isIterable
7
+ * @memberOf RA
8
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.18.0|v2.18.0}
9
+ * @category Type
10
+ * @sig * -> Boolean
11
+ * @param {*} val The value to test
12
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols#The_iterable_protocol}
13
+ * @return {boolean}
14
+ * @example
15
+ *
16
+ * RA.isIterable(['arrays', 'are', 'iterable']); //=> true
17
+ * RA.isIterable('strings are iterable, too'); //=> true
18
+ * RA.isIterable((function* () {})()); //=> true (generator objects are both iterable and iterators)
19
+ *
20
+ * RA.isIterable({}); //=> false
21
+ * RA.isIterable(-0); //=> false
22
+ * RA.isIterable(null); //=> false
23
+ * RA.isIterable(undefined); //=> false
24
+ */
25
+
26
+ var isIterable = curryN(1, function (val) {
27
+ if (typeof Symbol === 'undefined') {
28
+ return false;
29
+ }
30
+
31
+ return hasIn(Symbol.iterator, Object(val)) && isFunction(val[Symbol.iterator]);
32
+ });
33
+ export default isIterable;
package/es/isMap.js ADDED
@@ -0,0 +1,23 @@
1
+ import { type, identical, pipe, curryN } from 'ramda';
2
+ /**
3
+ * Predicate for determining if a provided value is an instance of a Map.
4
+ *
5
+ * @func isMap
6
+ * @memberOf RA
7
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.22.0|v2.22.0}
8
+ * @category Type
9
+ * @sig * -> Boolean
10
+ * @param {*} val The value to test
11
+ * @return {boolean}
12
+ * @see {@link RA.isSet|isSet}}
13
+ * @example
14
+ *
15
+ * RA.isMap(new Map()); //=> true
16
+ * RA.isMap(new Map([[1, 2], [2, 1]])); //=> true
17
+ * RA.isSet(new Set()); //=> false
18
+ * RA.isSet(new Set([1,2]); //=> false
19
+ * RA.isSet(new Object()); //=> false
20
+ */
21
+
22
+ var isMap = curryN(1, pipe(type, identical('Map')));
23
+ export default isMap;
package/es/isNaN.js ADDED
@@ -0,0 +1,41 @@
1
+ import { curryN } from 'ramda';
2
+ import isFunction from './isFunction';
3
+ import ponyfill from './internal/ponyfills/Number.isNaN';
4
+ export var isNaNPonyfill = curryN(1, ponyfill);
5
+ /**
6
+ * Checks whether the passed value is `NaN` and its type is `Number`.
7
+ * It is a more robust version of the original, global isNaN().
8
+ *
9
+ *
10
+ * @func isNaN
11
+ * @memberOf RA
12
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.6.0|v0.6.0}
13
+ * @category Type
14
+ * @sig * -> Boolean
15
+ * @param {*} val The value to test
16
+ * @return {boolean}
17
+ * @see {@link RA.isNotNaN|isNotNaN}
18
+ * @example
19
+ *
20
+ * RA.isNaN(NaN); // => true
21
+ * RA.isNaN(Number.NaN); // => true
22
+ * RA.isNaN(0 / 0); // => true
23
+ *
24
+ * // e.g. these would have been true with global isNaN().
25
+ * RA.isNaN('NaN'); // => false
26
+ * RA.isNaN(undefined); // => false
27
+ * RA.isNaN({}); // => false
28
+ * RA.isNaN('blabla'); // => false
29
+ *
30
+ * RA.isNaN(true); // => false
31
+ * RA.isNaN(null); // => false
32
+ * RA.isNaN(37); // => false
33
+ * RA.isNaN('37'); // => false
34
+ * RA.isNaN('37.37'); // => false
35
+ * RA.isNaN(''); // => false
36
+ * RA.isNaN(' '); // => false
37
+ */
38
+
39
+ var _isNaN = isFunction(Number.isNaN) ? curryN(1, Number.isNaN) : isNaNPonyfill;
40
+
41
+ export default _isNaN;
@@ -0,0 +1,25 @@
1
+ import { both, complement, curryN } from 'ramda';
2
+ import isInteger from './isInteger';
3
+ import isNegative from './isNegative';
4
+ /**
5
+ * Checks if value is a natural number.
6
+ * Natural numbers correspond to all non-negative integers and 0.
7
+ *
8
+ * @func isNaturalNumber
9
+ * @memberOf RA
10
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.29.0|v2.29.0}
11
+ * @category Type
12
+ * @sig * -> Boolean
13
+ * @param {*} val The value to test
14
+ * @return {boolean}
15
+ * @example
16
+ *
17
+ * RA.isNaturalNumber(5); // => true
18
+ * RA.isNaturalNumber(Number.MAX_VALUE); // => true
19
+ * RA.isNaturalNumber(0); // => true
20
+ * RA.isNaturalNumber(-1); // => false
21
+ * RA.isNaturalNumber(0.9); // => false
22
+ */
23
+
24
+ var isNaturalNumber = curryN(1, both(isInteger, complement(isNegative)));
25
+ export default isNaturalNumber;
@@ -0,0 +1,25 @@
1
+ import { both, gt, curryN } from 'ramda';
2
+ import isNumber from './isNumber';
3
+ /**
4
+ * Checks if value is a negative `Number` primitive or object. Zero is not considered neither
5
+ * positive or negative.
6
+ *
7
+ * @func isNegative
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/1.15.0|v1.15.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.isPositive|isPositive}
15
+ * @example
16
+ *
17
+ * RA.isNegative(-1); // => true
18
+ * RA.isNegative(Number.MIN_VALUE); // => false
19
+ * RA.isNegative(+Infinity); // => false
20
+ * RA.isNegative(NaN); // => false
21
+ * RA.isNegative('5'); // => false
22
+ */
23
+
24
+ var isNegative = curryN(1, both(isNumber, gt(0)));
25
+ export default isNegative;
@@ -0,0 +1,22 @@
1
+ import { identical } from 'ramda';
2
+ /**
3
+ * Checks if value is a negative zero (-0).
4
+ *
5
+ * @func isNegativeZero
6
+ * @memberof RA
7
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.22.0|v2.22.0}
8
+ * @category Type
9
+ * @sig * -> Boolean
10
+ * @param {*} val The value to test
11
+ * @return {boolean}
12
+ * @see @see {@link RA.isPositiveZero|isPositiveZero}
13
+ * @example
14
+ *
15
+ * RA.isNegativeZero(-0); //=> true
16
+ * RA.isNegativeZero(+0); //=> false
17
+ * RA.isNegativeZero(0); //=> false
18
+ * RA.isNegativeZero(null); //=> false
19
+ */
20
+
21
+ var isNegativeZero = identical(-0);
22
+ export default isNegativeZero;
@@ -0,0 +1,25 @@
1
+ import { either, isEmpty, isNil, curryN } from 'ramda';
2
+ /**
3
+ * Returns `true` if the given value is its type's empty value, `null` or `undefined`.
4
+ *
5
+ * @func isNilOrEmpty
6
+ * @memberOf RA
7
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.4.0|v0.4.0}
8
+ * @category Type
9
+ * @sig * -> Boolean
10
+ * @param {*} val The value to test
11
+ * @return {boolean}
12
+ * @see {@link http://ramdajs.com/docs/#isEmpty|R.isEmpty}, {@link http://ramdajs.com/docs/#isNil|R.isNil}
13
+ * @example
14
+ *
15
+ * RA.isNilOrEmpty([1, 2, 3]); //=> false
16
+ * RA.isNilOrEmpty([]); //=> true
17
+ * RA.isNilOrEmpty(''); //=> true
18
+ * RA.isNilOrEmpty(null); //=> true
19
+ * RA.isNilOrEmpty(undefined): //=> true
20
+ * RA.isNilOrEmpty({}); //=> true
21
+ * RA.isNilOrEmpty({length: 0}); //=> false
22
+ */
23
+
24
+ var isNilOrEmpty = curryN(1, either(isNil, isEmpty));
25
+ export default isNilOrEmpty;
@@ -0,0 +1,27 @@
1
+ import { both } from 'ramda';
2
+ import isNotEmpty from './isNotEmpty';
3
+ import isArray from './isArray';
4
+ /**
5
+ * Checks if input value is not an empty `Array`.
6
+ *
7
+ * @func isNonEmptyArray
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.4.0|v2.4.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.isEmptyArray|isEmptyArray}
15
+ * @example
16
+ *
17
+ * RA.isNonEmptyArray([42]); // => true
18
+ * RA.isNonEmptyArray([]); // => false
19
+ * RA.isNonEmptyArray({}); // => false
20
+ * RA.isNonEmptyArray(null); // => false
21
+ * RA.isNonEmptyArray(undefined); // => false
22
+ * RA.isNonEmptyArray(42); // => false
23
+ * RA.isNonEmptyArray('42'); // => false
24
+ */
25
+
26
+ var isNonEmptyArray = both(isArray, isNotEmpty);
27
+ export default isNonEmptyArray;
@@ -0,0 +1,30 @@
1
+ import { allPass } from 'ramda';
2
+ import isString from './isString';
3
+ import isNotObj from './isNotObj';
4
+ import isNotEmpty from './isNotEmpty';
5
+ /**
6
+ * Checks if input value is not an empty `String`.
7
+ *
8
+ * @func isNonEmptyString
9
+ * @memberOf RA
10
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.4.0|v2.4.0}
11
+ * @category Type
12
+ * @sig * -> Boolean
13
+ * @param {*} val The value to test
14
+ * @return {boolean}
15
+ * @see {@link RA.isEmptyString|isEmptyString}
16
+ * @example
17
+ *
18
+ * RA.isNonEmptyString('42'); // => true
19
+ * RA.isNonEmptyString(''); // => false
20
+ * RA.isNonEmptyString(new String('42')); // => false
21
+ * RA.isNonEmptyString(new String('')); // => false
22
+ * RA.isNonEmptyString([42]); // => false
23
+ * RA.isNonEmptyString({}); // => false
24
+ * RA.isNonEmptyString(null); // => false
25
+ * RA.isNonEmptyString(undefined); // => false
26
+ * RA.isNonEmptyString(42); // => false
27
+ */
28
+
29
+ var isNonEmptyString = allPass([isString, isNotObj, isNotEmpty]);
30
+ export default isNonEmptyString;
@@ -0,0 +1,28 @@
1
+ import { both, gte, flip, curryN } from 'ramda';
2
+ import isNumber from './isNumber';
3
+ /**
4
+ * Checks if value is a non-negative `Number` primitive or object. This includes all positive
5
+ * numbers and zero.
6
+ *
7
+ * @func isNonNegative
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.6.0|v2.6.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.isPositive|isPositive}, {@link RA.isNonPositive|isNonPositive}
15
+ * @example
16
+ *
17
+ * RA.isNonNegative(0); // => true
18
+ * RA.isNonNegative(1); // => true
19
+ * RA.isNonNegative(Infinity); // => true
20
+ * RA.isNonNegative(Number.MAX_VALUE); // => true
21
+ *
22
+ * RA.isNonNegative(-Infinity); // => false
23
+ * RA.isNonNegative(Number.MIN_VALUE); // => false
24
+ * RA.isNonNegative(NaN); // => false
25
+ */
26
+
27
+ var isNonNegative = curryN(1, both(isNumber, flip(gte)(0)));
28
+ export default isNonNegative;
@@ -0,0 +1,28 @@
1
+ import { both, lte, flip, curryN } from 'ramda';
2
+ import isNumber from './isNumber';
3
+ /**
4
+ * Checks if value is a non-positive `Number` primitive or object. This includes all negative
5
+ * numbers and zero.
6
+ *
7
+ * @func isNonPositive
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/2.6.0|v2.6.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.isNegative|isNegative}, {@link RA.isNonNegative|isNonNegative}
15
+ * @example
16
+ *
17
+ * RA.isNonPositive(0); // => true
18
+ * RA.isNonPositive(-1); // => true
19
+ * RA.isNonPositive(-Infinity); // => true
20
+ * RA.isNonPositive(Number.MIN_VALUE); // => true
21
+ *
22
+ * RA.isNonPositive(Infinity); // => false
23
+ * RA.isNonPositive(Number.MAX_VALUE); // => false
24
+ * RA.isNonPositive(NaN); // => false
25
+ */
26
+
27
+ var isNonPositive = curryN(1, both(isNumber, flip(lte)(0)));
28
+ export default isNonPositive;
@@ -0,0 +1,22 @@
1
+ import { complement } from 'ramda';
2
+ import isArray from './isArray';
3
+ /**
4
+ * Checks if input value is complement of `Array`
5
+ *
6
+ * @func isNotArray
7
+ * @memberOf RA
8
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.3.0|v0.3.0}
9
+ * @category Type
10
+ * @sig * -> Boolean
11
+ * @param {*} val The value to test
12
+ * @return {boolean}
13
+ * @see {@link RA.isArray|isArray}
14
+ * @example
15
+ *
16
+ * RA.isNotArray([]); //=> false
17
+ * RA.isNotArray(null); //=> true
18
+ * RA.isNotArray({}); //=> true
19
+ */
20
+
21
+ var isNotArray = complement(isArray);
22
+ export default isNotArray;
@@ -0,0 +1,24 @@
1
+ import { complement } from 'ramda';
2
+ import isArrayLike from './isArrayLike';
3
+ /**
4
+ * Tests whether or not an object is similar to an array.
5
+ *
6
+ * @func isNotArrayLike
7
+ * @memberOf RA
8
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.5.0|v0.5.0}
9
+ * @category Type
10
+ * @sig * -> Boolean
11
+ * @param {*} val The value to test
12
+ * @return {boolean}
13
+ * @see {@link RA.isArrayLike|isArrayLike}
14
+ * @example
15
+ *
16
+ * RA.isNotArrayLike([]); //=> false
17
+ * RA.isNotArrayLike(true); //=> true
18
+ * RA.isNotArrayLike({}); //=> true
19
+ * RA.isNotArrayLike({length: 10}); //=> true
20
+ * RA.isNotArrayLike({0: 'zero', 9: 'nine', length: 10}); //=> false
21
+ */
22
+
23
+ var isNotArrayLike = complement(isArrayLike);
24
+ export default isNotArrayLike;
@@ -0,0 +1,27 @@
1
+ import { complement } from 'ramda';
2
+ import isAsyncFunction from './isAsyncFunction';
3
+ /* eslint-disable max-len */
4
+
5
+ /**
6
+ * Checks if input value is complement of `Async Function`
7
+ *
8
+ * @func isNotAsyncFunction
9
+ * @memberOf RA
10
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.5.0|v0.5.0}
11
+ * @category Type
12
+ * @sig * -> Boolean
13
+ * @param {*} val The value to test
14
+ * @return {boolean}
15
+ * @see {@link RA.isFunction|isFunction}, {@link RA.isAsyncFunction|isAsyncFunction}, {@link RA.isGeneratorFunction|isGeneratorFunction}
16
+ * @example
17
+ *
18
+ * RA.isNotAsyncFunction(async function test() { }); //=> false
19
+ * RA.isNotAsyncFunction(null); //=> true
20
+ * RA.isNotAsyncFunction(function test() { }); //=> true
21
+ * RA.isNotAsyncFunction(() => {}); //=> true
22
+ */
23
+
24
+ /* eslint-enable max-len */
25
+
26
+ var isNotAsyncFunction = complement(isAsyncFunction);
27
+ export default isNotAsyncFunction;
@@ -0,0 +1,22 @@
1
+ import { complement } from 'ramda';
2
+ import isBoolean from './isBoolean';
3
+ /**
4
+ * Checks if input value is complement of `Boolean`.
5
+ *
6
+ * @func isNotBoolean
7
+ * @memberOf RA
8
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.3.0|v0.3.0}
9
+ * @category Type
10
+ * @sig * -> Boolean
11
+ * @param {*} val The value to test
12
+ * @return {boolean}
13
+ * @see {@link RA.isBoolean|isBoolean}
14
+ * @example
15
+ *
16
+ * RA.isNotBoolean(false); //=> false
17
+ * RA.isNotBoolean(true); //=> false
18
+ * RA.isNotBoolean(null); //=> true
19
+ */
20
+
21
+ var isNotBoolean = complement(isBoolean);
22
+ export default isNotBoolean;
@@ -0,0 +1,21 @@
1
+ import { complement } from 'ramda';
2
+ import isDate from './isDate';
3
+ /**
4
+ * Checks if value is complement of `Date` object.
5
+ *
6
+ * @func isNotDate
7
+ * @memberOf RA
8
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.6.0|v0.6.0}
9
+ * @category Type
10
+ * @sig * -> Boolean
11
+ * @param {*} val The value to test
12
+ * @return {boolean}
13
+ * @see {@link RA.isDate|isDate}
14
+ * @example
15
+ *
16
+ * RA.isNotDate(new Date()); //=> false
17
+ * RA.isNotDate('1997-07-16T19:20+01:00'); //=> true
18
+ */
19
+
20
+ var isNotDate = complement(isDate);
21
+ export default isNotDate;
@@ -0,0 +1,25 @@
1
+ import { complement, isEmpty } from 'ramda';
2
+ /**
3
+ * Returns true if the given value is not its type's empty value; `false` otherwise.
4
+ *
5
+ * @func isNotEmpty
6
+ * @memberOf RA
7
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.4.0|v0.4.0}
8
+ * @category Logic
9
+ * @sig * -> Boolean
10
+ * @param {*} val The value to test
11
+ * @return {boolean}
12
+ * @see {@link http://ramdajs.com/docs/#isEmpty|R.isEmpty}
13
+ * @example
14
+ *
15
+ * RA.isNotEmpty([1, 2, 3]); //=> true
16
+ * RA.isNotEmpty([]); //=> false
17
+ * RA.isNotEmpty(''); //=> false
18
+ * RA.isNotEmpty(null); //=> true
19
+ * RA.isNotEmpty(undefined): //=> true
20
+ * RA.isNotEmpty({}); //=> false
21
+ * RA.isNotEmpty({length: 0}); //=> true
22
+ */
23
+
24
+ var isNotEmpty = complement(isEmpty);
25
+ export default isNotEmpty;
@@ -0,0 +1,29 @@
1
+ import { complement } from 'ramda';
2
+ import _isFinite from './isFinite';
3
+ /**
4
+ * Checks whether the passed value is complement of finite `Number`.
5
+ *
6
+ *
7
+ * @func isNotFinite
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.7.0|v0.7.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.isFinite|isFinite}
15
+ * @example
16
+ *
17
+ * RA.isNotFinite(Infinity); //=> true
18
+ * RA.isNotFinite(NaN); //=> true
19
+ * RA.isNotFinite(-Infinity); //=> true
20
+ *
21
+ * RA.isNotFinite(0); // false
22
+ * RA.isNotFinite(2e64); // false
23
+ *
24
+ * RA.isNotFinite('0'); // => true
25
+ * RA.isNotFinite(null); // => true
26
+ */
27
+
28
+ var isNotFinite = complement(_isFinite);
29
+ export default isNotFinite;
@@ -0,0 +1,33 @@
1
+ import { complement, curryN } from 'ramda';
2
+ import isFloat from './isFloat';
3
+ /**
4
+ * Checks whether the passed value is complement of a `float`.
5
+ *
6
+ * @func isNotFloat
7
+ * @memberOf RA
8
+ * @since {@link https://char0n.github.io/ramda-adjunct/1.14.0|v1.14.0}
9
+ * @category Type
10
+ * @sig * -> Boolean
11
+ * @param {*} val The value to test
12
+ * @return {boolean}
13
+ * @see {@link RA.isFloat|isFloat}
14
+ * @example
15
+ *
16
+ * RA.isNotFloat(0); //=> true
17
+ * RA.isNotFloat(1); //=> true
18
+ * RA.isNotFloat(-100000); //=> true
19
+ *
20
+ * RA.isNotFloat(0.1); //=> false
21
+ * RA.isNotFloat(Math.PI); //=> false
22
+ *
23
+ * RA.isNotFloat(NaN); //=> true
24
+ * RA.isNotFloat(Infinity); //=> true
25
+ * RA.isNotFloat(-Infinity); //=> true
26
+ * RA.isNotFloat('10'); //=> true
27
+ * RA.isNotFloat(true); //=> true
28
+ * RA.isNotFloat(false); //=> true
29
+ * RA.isNotFloat([1]); //=> true
30
+ */
31
+
32
+ var isNotFloat = curryN(1, complement(isFloat));
33
+ export default isNotFloat;
@@ -0,0 +1,29 @@
1
+ import { complement } from 'ramda';
2
+ import isFunction from './isFunction';
3
+ /* eslint-disable max-len */
4
+
5
+ /**
6
+ * Checks if input value is complement of `Function`.
7
+ *
8
+ * @func isNotFunction
9
+ * @memberOf RA
10
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.5.0|v0.5.0}
11
+ * @category Type
12
+ * @sig * -> Boolean
13
+ * @param {*} val The value to test
14
+ * @return {boolean}
15
+ * @see {@link RA.isFunction|isFunction}, {@link RA.isAsyncFunction|isNotAsyncFunction}, {@link RA.isGeneratorFunction|isGeneratorFunction}
16
+ * @example
17
+ *
18
+ * RA.isNotFunction(function test() { }); //=> false
19
+ * RA.isNotFunction(function* test() { }); //=> false
20
+ * RA.isNotFunction(async function test() { }); //=> false
21
+ * RA.isNotFunction(() => {}); //=> false
22
+ * RA.isNotFunction(null); //=> true
23
+ * RA.isNotFunction('abc'); //=> true
24
+ */
25
+
26
+ /* eslint-enable max-len */
27
+
28
+ var isNotFunction = complement(isFunction);
29
+ export default isNotFunction;
@@ -0,0 +1,27 @@
1
+ import { complement } from 'ramda';
2
+ import isGeneratorFunction from './isGeneratorFunction';
3
+ /* eslint-disable max-len */
4
+
5
+ /**
6
+ * Checks if input value is complement of `Generator Function`
7
+ *
8
+ * @func isNotGeneratorFunction
9
+ * @memberOf RA
10
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.5.0|v0.5.0}
11
+ * @category Type
12
+ * @sig * -> Boolean
13
+ * @param {*} val The value to test
14
+ * @return {boolean}
15
+ * @see {@link RA.isFunction|isFunction}, {@link RA.isAsyncFunction|isAsyncFunction}, {@link RA.isGeneratorFunction|isGeneratorFunction}
16
+ * @example
17
+ *
18
+ * RA.isNotGeneratorFunction(function* test() { }); //=> false
19
+ * RA.isNotGeneratorFunction(null); //=> true
20
+ * RA.isNotGeneratorFunction(function test() { }); //=> true
21
+ * RA.isNotGeneratorFunction(() => {}); //=> true
22
+ */
23
+
24
+ /* eslint-enable max-len */
25
+
26
+ var isNotGeneratorFunction = complement(isGeneratorFunction);
27
+ export default isNotGeneratorFunction;
@@ -0,0 +1,34 @@
1
+ import { complement } from 'ramda';
2
+ import isInteger from './isInteger';
3
+ /**
4
+ * Checks whether the passed value is complement of an `integer`.
5
+ *
6
+ *
7
+ * @func isNotInteger
8
+ * @memberOf RA
9
+ * @since {@link https://char0n.github.io/ramda-adjunct/0.7.0|v0.7.0}
10
+ * @category Type
11
+ * @sig * -> Boolean
12
+ * @param {*} val The value to test
13
+ * @return {boolean}
14
+ * @see {@link RA.isInteger|isInteger}
15
+ * @example
16
+ *
17
+ * RA.isNotInteger(0); //=> false
18
+ * RA.isNotInteger(1); //=> false
19
+ * RA.isNotInteger(-100000); //=> false
20
+ *
21
+ * RA.isNotInteger(0.1); //=> true
22
+ * RA.isNotInteger(Math.PI); //=> true
23
+ *
24
+ * RA.isNotInteger(NaN); //=> true
25
+ * RA.isNotInteger(Infinity); //=> true
26
+ * RA.isNotInteger(-Infinity); //=> true
27
+ * RA.isNotInteger('10'); //=> true
28
+ * RA.isNotInteger(true); //=> true
29
+ * RA.isNotInteger(false); //=> true
30
+ * RA.isNotInteger([1]); //=> true
31
+ */
32
+
33
+ var isNotInteger = complement(isInteger);
34
+ export default isNotInteger;