ramda-adjunct 5.0.0 → 5.1.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 (408) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -1
  3. package/dist/RA.node.js +10440 -452
  4. package/dist/RA.node.min.js +1 -1
  5. package/dist/RA.web.js +10440 -452
  6. package/dist/RA.web.min.js +1 -1
  7. package/dist/RA.web.standalone.js +18646 -447
  8. package/dist/RA.web.standalone.min.js +1 -1
  9. package/dist/package.json +1 -0
  10. package/es/async.js +4 -4
  11. package/es/copyKeys.js +1 -1
  12. package/es/dispatch.js +5 -5
  13. package/es/fantasy-land/Identity.js +3 -3
  14. package/es/fantasy-land/traits.js +1 -1
  15. package/es/flattenDepth.js +5 -5
  16. package/es/internal/ponyfills/Array.from.js +5 -5
  17. package/es/internal/ponyfills/Promise.allSettled.js +5 -5
  18. package/es/internal/ponyfills/Promise.any.js +15 -15
  19. package/es/lastP.js +5 -5
  20. package/es/reduceP.js +4 -4
  21. package/es/reduceRightP.js +4 -4
  22. package/es/renameKey.js +1 -1
  23. package/es/sortByProps.js +5 -5
  24. package/lib/allEqual.js +1 -1
  25. package/lib/allIdentical.js +1 -1
  26. package/lib/allSettledP.js +1 -1
  27. package/lib/allUnique.js +1 -1
  28. package/lib/anyP.js +1 -1
  29. package/lib/argsPass.js +1 -1
  30. package/lib/async.js +5 -5
  31. package/lib/cata.js +1 -1
  32. package/lib/compact.js +1 -1
  33. package/lib/concatAll.js +1 -1
  34. package/lib/copyKeys.js +2 -2
  35. package/lib/curryRight.js +1 -1
  36. package/lib/delayP.js +1 -1
  37. package/lib/dispatch.js +6 -6
  38. package/lib/ensureArray.js +1 -1
  39. package/lib/escapeRegExp.js +1 -1
  40. package/lib/fantasy-land/Identity.js +3 -3
  41. package/lib/fantasy-land/traits.js +2 -2
  42. package/lib/flattenDepth.js +6 -6
  43. package/lib/flattenProp.js +1 -1
  44. package/lib/fnull.js +1 -1
  45. package/lib/index.js +1 -1
  46. package/lib/internal/ap.js +1 -1
  47. package/lib/internal/isCoercible.js +1 -1
  48. package/lib/internal/makeFlat.js +1 -1
  49. package/lib/internal/ponyfills/Array.from.js +6 -6
  50. package/lib/internal/ponyfills/Math.trunc.js +1 -1
  51. package/lib/internal/ponyfills/Number.isFinite.js +1 -1
  52. package/lib/internal/ponyfills/Number.isInteger.js +1 -1
  53. package/lib/internal/ponyfills/Number.isNaN.js +1 -1
  54. package/lib/internal/ponyfills/Number.isSafeInteger.js +1 -1
  55. package/lib/internal/ponyfills/Promise.allSettled.js +6 -6
  56. package/lib/internal/ponyfills/Promise.any.js +16 -16
  57. package/lib/internal/ponyfills/String.padEnd.js +1 -1
  58. package/lib/internal/ponyfills/String.padStart.js +1 -1
  59. package/lib/internal/ponyfills/String.repeat.js +1 -1
  60. package/lib/internal/ponyfills/String.replaceAll.js +1 -1
  61. package/lib/invoke.js +1 -1
  62. package/lib/invokeArgs.js +1 -1
  63. package/lib/isArray.js +1 -1
  64. package/lib/isArrayLike.js +1 -1
  65. package/lib/isBlank.js +1 -1
  66. package/lib/isEmptyArray.js +1 -1
  67. package/lib/isEven.js +1 -1
  68. package/lib/isFalsy.js +1 -1
  69. package/lib/isFinite.js +1 -1
  70. package/lib/isFloat.js +1 -1
  71. package/lib/isFunction.js +1 -1
  72. package/lib/isIndexed.js +1 -1
  73. package/lib/isInteger.js +1 -1
  74. package/lib/isInteger32.js +1 -1
  75. package/lib/isIterable.js +1 -1
  76. package/lib/isNaN.js +1 -1
  77. package/lib/isNaturalNumber.js +1 -1
  78. package/lib/isNegative.js +1 -1
  79. package/lib/isNonEmptyArray.js +1 -1
  80. package/lib/isNonEmptyString.js +1 -1
  81. package/lib/isNonNegative.js +1 -1
  82. package/lib/isNonPositive.js +1 -1
  83. package/lib/isNotArray.js +1 -1
  84. package/lib/isNotArrayLike.js +1 -1
  85. package/lib/isNotAsyncFunction.js +1 -1
  86. package/lib/isNotBoolean.js +1 -1
  87. package/lib/isNotDate.js +1 -1
  88. package/lib/isNotFinite.js +1 -1
  89. package/lib/isNotFloat.js +1 -1
  90. package/lib/isNotFunction.js +1 -1
  91. package/lib/isNotGeneratorFunction.js +1 -1
  92. package/lib/isNotInteger.js +1 -1
  93. package/lib/isNotMap.js +1 -1
  94. package/lib/isNotNaN.js +1 -1
  95. package/lib/isNotNilOrEmpty.js +1 -1
  96. package/lib/isNotNull.js +1 -1
  97. package/lib/isNotNumber.js +1 -1
  98. package/lib/isNotObj.js +1 -1
  99. package/lib/isNotObjLike.js +1 -1
  100. package/lib/isNotPair.js +1 -1
  101. package/lib/isNotPlainObj.js +1 -1
  102. package/lib/isNotPrimitive.js +1 -1
  103. package/lib/isNotRegExp.js +1 -1
  104. package/lib/isNotSet.js +1 -1
  105. package/lib/isNotString.js +1 -1
  106. package/lib/isNotUndefined.js +1 -1
  107. package/lib/isNotValidDate.js +1 -1
  108. package/lib/isNotValidNumber.js +1 -1
  109. package/lib/isObj.js +1 -1
  110. package/lib/isObjLike.js +1 -1
  111. package/lib/isOdd.js +1 -1
  112. package/lib/isPair.js +1 -1
  113. package/lib/isPlainObj.js +1 -1
  114. package/lib/isPositive.js +1 -1
  115. package/lib/isPrimitive.js +1 -1
  116. package/lib/isPromise.js +1 -1
  117. package/lib/isPrototypeOf.js +1 -1
  118. package/lib/isSafeInteger.js +1 -1
  119. package/lib/isSentinelValue.js +1 -1
  120. package/lib/isSparseArray.js +1 -1
  121. package/lib/isThenable.js +1 -1
  122. package/lib/isUinteger32.js +1 -1
  123. package/lib/isUndefined.js +1 -1
  124. package/lib/isValidDate.js +1 -1
  125. package/lib/isValidNumber.js +1 -1
  126. package/lib/lastP.js +6 -6
  127. package/lib/lengthEq.js +1 -1
  128. package/lib/lengthGt.js +1 -1
  129. package/lib/lengthGte.js +1 -1
  130. package/lib/lengthLt.js +1 -1
  131. package/lib/lengthLte.js +1 -1
  132. package/lib/lengthNotEq.js +1 -1
  133. package/lib/lensNotEq.js +1 -1
  134. package/lib/lensNotSatisfy.js +1 -1
  135. package/lib/lensSatisfies.js +1 -1
  136. package/lib/lensTraverse.js +1 -1
  137. package/lib/liftF.js +1 -1
  138. package/lib/liftFN.js +1 -1
  139. package/lib/mergePaths.js +1 -1
  140. package/lib/mergeProp.js +1 -1
  141. package/lib/noneP.js +1 -1
  142. package/lib/noop.js +1 -1
  143. package/lib/notAllUnique.js +1 -1
  144. package/lib/padCharsEnd.js +1 -1
  145. package/lib/padCharsStart.js +1 -1
  146. package/lib/padEnd.js +1 -1
  147. package/lib/padStart.js +1 -1
  148. package/lib/rangeStep.js +1 -1
  149. package/lib/reduceP.js +5 -5
  150. package/lib/reduceRightP.js +5 -5
  151. package/lib/renameKey.js +2 -2
  152. package/lib/renameKeyWith.js +1 -1
  153. package/lib/renameKeys.js +1 -1
  154. package/lib/repeatStr.js +1 -1
  155. package/lib/replaceAll.js +1 -1
  156. package/lib/sign.js +1 -1
  157. package/lib/sortByProp.js +1 -1
  158. package/lib/sortByProps.js +5 -5
  159. package/lib/spreadProp.js +1 -1
  160. package/lib/toArray.js +1 -1
  161. package/lib/toNumber.js +1 -1
  162. package/lib/trimCharsEnd.js +1 -1
  163. package/lib/trimCharsStart.js +1 -1
  164. package/lib/trimEnd.js +1 -1
  165. package/lib/trimStart.js +1 -1
  166. package/lib/trunc.js +1 -1
  167. package/lib/unzipObjWith.js +1 -1
  168. package/package.json +33 -30
  169. package/types/index.d.ts +0 -5
  170. package/babel.config.cjs +0 -56
  171. package/src/Y.js +0 -32
  172. package/src/allEqual.js +0 -28
  173. package/src/allEqualTo.js +0 -25
  174. package/src/allIdentical.js +0 -26
  175. package/src/allIdenticalTo.js +0 -25
  176. package/src/allP.js +0 -27
  177. package/src/allSettledP.js +0 -34
  178. package/src/allUnique.js +0 -25
  179. package/src/anyP.js +0 -33
  180. package/src/appendFlipped.js +0 -24
  181. package/src/argsPass.js +0 -40
  182. package/src/async.js +0 -60
  183. package/src/cata.js +0 -86
  184. package/src/catchP.js +0 -25
  185. package/src/ceil.js +0 -28
  186. package/src/compact.js +0 -23
  187. package/src/concatAll.js +0 -35
  188. package/src/concatRight.js +0 -30
  189. package/src/copyKeys.js +0 -31
  190. package/src/curryRight.js +0 -26
  191. package/src/curryRightN.js +0 -29
  192. package/src/defaultWhen.js +0 -26
  193. package/src/delayP.js +0 -45
  194. package/src/dispatch.js +0 -74
  195. package/src/divideNum.js +0 -20
  196. package/src/dropArgs.js +0 -23
  197. package/src/ensureArray.js +0 -24
  198. package/src/escapeRegExp.js +0 -22
  199. package/src/fantasy-land/Identity.js +0 -270
  200. package/src/fantasy-land/mapping.js +0 -20
  201. package/src/fantasy-land/traits.js +0 -57
  202. package/src/fantasy-land/util.js +0 -23
  203. package/src/filterIndexed.js +0 -28
  204. package/src/findOr.js +0 -30
  205. package/src/flattenDepth.js +0 -39
  206. package/src/flattenPath.js +0 -28
  207. package/src/flattenProp.js +0 -28
  208. package/src/floor.js +0 -27
  209. package/src/fnull.js +0 -38
  210. package/src/inRange.js +0 -34
  211. package/src/included.js +0 -28
  212. package/src/index.js +0 -241
  213. package/src/internal/ap.js +0 -30
  214. package/src/internal/compareLength.js +0 -7
  215. package/src/internal/isCoercible.js +0 -12
  216. package/src/internal/isOfTypeObject.js +0 -3
  217. package/src/internal/makeFlat.js +0 -42
  218. package/src/internal/ponyfills/Array.from.js +0 -34
  219. package/src/internal/ponyfills/Math.sign.js +0 -3
  220. package/src/internal/ponyfills/Math.trunc.js +0 -14
  221. package/src/internal/ponyfills/Number.MAX_SAFE_INTEGER.js +0 -3
  222. package/src/internal/ponyfills/Number.MIN_SAFE_INTEGER.js +0 -3
  223. package/src/internal/ponyfills/Number.isFinite.js +0 -8
  224. package/src/internal/ponyfills/Number.isInteger.js +0 -10
  225. package/src/internal/ponyfills/Number.isNaN.js +0 -8
  226. package/src/internal/ponyfills/Number.isSafeInteger.js +0 -11
  227. package/src/internal/ponyfills/Promise.allSettled.js +0 -18
  228. package/src/internal/ponyfills/Promise.any.js +0 -29
  229. package/src/internal/ponyfills/String.padEnd.js +0 -25
  230. package/src/internal/ponyfills/String.padStart.js +0 -27
  231. package/src/internal/ponyfills/String.repeat.js +0 -49
  232. package/src/internal/ponyfills/String.replaceAll.js +0 -44
  233. package/src/internal/ponyfills/String.trimEnd.js +0 -5
  234. package/src/internal/ponyfills/String.trimStart.js +0 -5
  235. package/src/invoke.js +0 -22
  236. package/src/invokeArgs.js +0 -36
  237. package/src/isArray.js +0 -27
  238. package/src/isArrayLike.js +0 -79
  239. package/src/isAsyncFunction.js +0 -23
  240. package/src/isBigInt.js +0 -24
  241. package/src/isBlank.js +0 -33
  242. package/src/isBoolean.js +0 -22
  243. package/src/isDate.js +0 -21
  244. package/src/isEmptyArray.js +0 -28
  245. package/src/isEmptyString.js +0 -28
  246. package/src/isError.js +0 -21
  247. package/src/isEven.js +0 -31
  248. package/src/isFalse.js +0 -31
  249. package/src/isFalsy.js +0 -28
  250. package/src/isFinite.js +0 -37
  251. package/src/isFloat.js +0 -36
  252. package/src/isFunction.js +0 -32
  253. package/src/isGeneratorFunction.js +0 -26
  254. package/src/isIndexed.js +0 -24
  255. package/src/isInteger.js +0 -40
  256. package/src/isInteger32.js +0 -28
  257. package/src/isIterable.js +0 -37
  258. package/src/isMap.js +0 -25
  259. package/src/isNaN.js +0 -45
  260. package/src/isNaturalNumber.js +0 -28
  261. package/src/isNegative.js +0 -27
  262. package/src/isNegativeZero.js +0 -23
  263. package/src/isNilOrEmpty.js +0 -26
  264. package/src/isNonEmptyArray.js +0 -28
  265. package/src/isNonEmptyString.js +0 -31
  266. package/src/isNonNegative.js +0 -30
  267. package/src/isNonPositive.js +0 -30
  268. package/src/isNotArray.js +0 -24
  269. package/src/isNotArrayLike.js +0 -26
  270. package/src/isNotAsyncFunction.js +0 -27
  271. package/src/isNotBoolean.js +0 -24
  272. package/src/isNotDate.js +0 -23
  273. package/src/isNotFinite.js +0 -31
  274. package/src/isNotFloat.js +0 -35
  275. package/src/isNotFunction.js +0 -29
  276. package/src/isNotGeneratorFunction.js +0 -27
  277. package/src/isNotInteger.js +0 -36
  278. package/src/isNotMap.js +0 -27
  279. package/src/isNotNaN.js +0 -37
  280. package/src/isNotNil.js +0 -23
  281. package/src/isNotNilOrEmpty.js +0 -28
  282. package/src/isNotNull.js +0 -24
  283. package/src/isNotNumber.js +0 -25
  284. package/src/isNotObj.js +0 -29
  285. package/src/isNotObjLike.js +0 -29
  286. package/src/isNotPair.js +0 -27
  287. package/src/isNotPlainObj.js +0 -35
  288. package/src/isNotPrimitive.js +0 -26
  289. package/src/isNotRegExp.js +0 -24
  290. package/src/isNotSet.js +0 -26
  291. package/src/isNotString.js +0 -23
  292. package/src/isNotUndefined.js +0 -24
  293. package/src/isNotValidDate.js +0 -24
  294. package/src/isNotValidNumber.js +0 -27
  295. package/src/isNull.js +0 -22
  296. package/src/isNumber.js +0 -24
  297. package/src/isObj.js +0 -31
  298. package/src/isObjLike.js +0 -30
  299. package/src/isOdd.js +0 -29
  300. package/src/isPair.js +0 -27
  301. package/src/isPlainObj.js +0 -65
  302. package/src/isPositive.js +0 -26
  303. package/src/isPositiveZero.js +0 -23
  304. package/src/isPrimitive.js +0 -46
  305. package/src/isPromise.js +0 -32
  306. package/src/isPrototypeOf.js +0 -36
  307. package/src/isRegExp.js +0 -22
  308. package/src/isSafeInteger.js +0 -40
  309. package/src/isSentinelValue.js +0 -26
  310. package/src/isSet.js +0 -24
  311. package/src/isSparseArray.js +0 -43
  312. package/src/isString.js +0 -21
  313. package/src/isSymbol.js +0 -29
  314. package/src/isThenable.js +0 -28
  315. package/src/isTrue.js +0 -27
  316. package/src/isTruthy.js +0 -28
  317. package/src/isUinteger32.js +0 -29
  318. package/src/isUndefined.js +0 -24
  319. package/src/isValidDate.js +0 -29
  320. package/src/isValidNumber.js +0 -28
  321. package/src/lastP.js +0 -54
  322. package/src/lengthEq.js +0 -24
  323. package/src/lengthGt.js +0 -24
  324. package/src/lengthGte.js +0 -26
  325. package/src/lengthLt.js +0 -24
  326. package/src/lengthLte.js +0 -25
  327. package/src/lengthNotEq.js +0 -24
  328. package/src/lensEq.js +0 -28
  329. package/src/lensIso.js +0 -51
  330. package/src/lensNotEq.js +0 -28
  331. package/src/lensNotSatisfy.js +0 -30
  332. package/src/lensSatisfies.js +0 -33
  333. package/src/lensTraverse.js +0 -56
  334. package/src/liftF.js +0 -37
  335. package/src/liftFN.js +0 -45
  336. package/src/list.js +0 -20
  337. package/src/mapIndexed.js +0 -27
  338. package/src/mergePath.js +0 -30
  339. package/src/mergePaths.js +0 -29
  340. package/src/mergeProp.js +0 -30
  341. package/src/mergeProps.js +0 -27
  342. package/src/move.js +0 -26
  343. package/src/nand.js +0 -27
  344. package/src/neither.js +0 -38
  345. package/src/noneP.js +0 -35
  346. package/src/nonePass.js +0 -32
  347. package/src/noop.js +0 -21
  348. package/src/nor.js +0 -28
  349. package/src/notAllPass.js +0 -32
  350. package/src/notAllUnique.js +0 -25
  351. package/src/notBoth.js +0 -38
  352. package/src/notEqual.js +0 -31
  353. package/src/omitBy.js +0 -25
  354. package/src/omitIndexes.js +0 -27
  355. package/src/overlaps.js +0 -30
  356. package/src/padCharsEnd.js +0 -37
  357. package/src/padCharsStart.js +0 -35
  358. package/src/padEnd.js +0 -25
  359. package/src/padStart.js +0 -23
  360. package/src/pathNotEq.js +0 -31
  361. package/src/pathOrLazy.js +0 -30
  362. package/src/paths.js +0 -26
  363. package/src/pickIndexes.js +0 -30
  364. package/src/propNotEq.js +0 -30
  365. package/src/rangeStep.js +0 -37
  366. package/src/reduceIndexed.js +0 -31
  367. package/src/reduceP.js +0 -96
  368. package/src/reduceRightP.js +0 -101
  369. package/src/rejectP.js +0 -24
  370. package/src/renameKey.js +0 -33
  371. package/src/renameKeyWith.js +0 -30
  372. package/src/renameKeys.js +0 -40
  373. package/src/renameKeysWith.js +0 -27
  374. package/src/repeatStr.js +0 -30
  375. package/src/replaceAll.js +0 -35
  376. package/src/resolveP.js +0 -28
  377. package/src/round.js +0 -26
  378. package/src/seq.js +0 -38
  379. package/src/sign.js +0 -33
  380. package/src/skipTake.js +0 -33
  381. package/src/sliceFrom.js +0 -23
  382. package/src/sliceTo.js +0 -23
  383. package/src/sortByPaths.js +0 -55
  384. package/src/sortByProp.js +0 -45
  385. package/src/sortByProps.js +0 -31
  386. package/src/spreadPath.js +0 -26
  387. package/src/spreadProp.js +0 -25
  388. package/src/stubArray.js +0 -18
  389. package/src/stubNull.js +0 -19
  390. package/src/stubObj.js +0 -19
  391. package/src/stubString.js +0 -19
  392. package/src/stubUndefined.js +0 -19
  393. package/src/subtractNum.js +0 -20
  394. package/src/thenCatchP.js +0 -27
  395. package/src/toArray.js +0 -32
  396. package/src/toInteger32.js +0 -22
  397. package/src/toNumber.js +0 -24
  398. package/src/toUinteger32.js +0 -26
  399. package/src/trimCharsEnd.js +0 -25
  400. package/src/trimCharsStart.js +0 -25
  401. package/src/trimEnd.js +0 -30
  402. package/src/trimStart.js +0 -29
  403. package/src/trunc.js +0 -33
  404. package/src/unzipObjWith.js +0 -40
  405. package/src/viewOr.js +0 -32
  406. package/src/weave.js +0 -35
  407. package/src/weaveLazy.js +0 -37
  408. package/src/zipObjWith.js +0 -27
package/src/sign.js DELETED
@@ -1,33 +0,0 @@
1
- import { bind, curryN } from 'ramda';
2
-
3
- import isFunction from './isFunction.js';
4
- import ponyfill from './internal/ponyfills/Math.sign.js';
5
-
6
- export const signPonyfill = curryN(1, ponyfill);
7
-
8
- /**
9
- * Returns the sign of a number, indicating whether the number is positive, negative or zero.
10
- *
11
- * @func sign
12
- * @memberOf RA
13
- * @since {@link https://char0n.github.io/ramda-adjunct/2.15.0|v2.15.0}
14
- * @category Math
15
- * @sig Number | String -> Number
16
- * @param {number} number A number
17
- * @return {number} A number representing the sign of the given argument. If the argument is a positive number, negative number, positive zero or negative zero, the function will return 1, -1, 0 or -0 respectively. Otherwise, NaN is returned
18
- * @example
19
- *
20
- * RA.sign(3); // 1
21
- * RA.sign(-3); // -1
22
- * RA.sign('-3'); // -1
23
- * RA.sign(0); // 0
24
- * RA.sign(-0); // -0
25
- * RA.sign(NaN); // NaN
26
- * RA.sign('foo'); // NaN
27
- */
28
-
29
- const sign = isFunction(Math.sign)
30
- ? curryN(1, bind(Math.sign, Math))
31
- : signPonyfill;
32
-
33
- export default sign;
package/src/skipTake.js DELETED
@@ -1,33 +0,0 @@
1
- import {
2
- curry,
3
- addIndex,
4
- filter,
5
- pipe,
6
- modulo,
7
- identical,
8
- nthArg,
9
- __,
10
- } from 'ramda';
11
-
12
- /**
13
- * When given a number n and an array, returns an array containing every nth element.
14
- *
15
- * @func skipTake
16
- * @memberOf RA
17
- * @category List
18
- * @since {@link https://char0n.github.io/ramda-adjunct/2.26.0|v2.26.0}
19
- * @sig Number -> [a] -> [a]
20
- * @param {number} the nth element to extract
21
- * @param {Array} value the input array
22
- * @return {Array} An array containing every nth element
23
- * @example
24
- *
25
- * RA.skipTake(2, [1,2,3,4]) //=> [1, 3]
26
- * RA.skipTake(3, R.range(0, 20)); //=> [0, 3, 6, 9, 12, 15, 18]
27
- */
28
-
29
- const skipTake = curry((n, list) =>
30
- addIndex(filter)(pipe(nthArg(1), modulo(__, n), identical(0)))(list)
31
- );
32
-
33
- export default skipTake;
package/src/sliceFrom.js DELETED
@@ -1,23 +0,0 @@
1
- import { __, slice } from 'ramda';
2
-
3
- /**
4
- * Returns the elements of the given list or string (or object with a slice method)
5
- * from fromIndex (inclusive).
6
- * Dispatches to the slice method of the second argument, if present.
7
- *
8
- * @func sliceFrom
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/1.16.0|v1.16.0}
11
- * @category List
12
- * @sig Number -> [a] -> [a]
13
- * @param {number} fromIndex The start index (inclusive)
14
- * @param {Array|string} list The list or string to slice
15
- * @return {Array|string} The sliced list or string
16
- * @see {@link http://ramdajs.com/docs/#slice|R.slice}, {@link RA.sliceTo|sliceTo}
17
- * @example
18
- *
19
- * RA.sliceFrom(1, [1, 2, 3]); //=> [2, 3]
20
- */
21
- const sliceFrom = slice(__, Infinity);
22
-
23
- export default sliceFrom;
package/src/sliceTo.js DELETED
@@ -1,23 +0,0 @@
1
- import { slice } from 'ramda';
2
-
3
- /**
4
- * Returns the elements of the given list or string (or object with a slice method)
5
- * to toIndex (exclusive).
6
- * Dispatches to the slice method of the second argument, if present.
7
- *
8
- * @func sliceTo
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/1.16.0|v1.16.0}
11
- * @category List
12
- * @sig Number -> [a] -> [a]
13
- * @param {number} toIndex The end index (exclusive)
14
- * @param {Array|string} list The list or string to slice
15
- * @return {Array|string} The sliced list or string
16
- * @see {@link http://ramdajs.com/docs/#slice|R.slice}, {@link RA.sliceFrom|sliceFrom}
17
- * @example
18
- *
19
- * RA.sliceTo(2, [1, 2, 3]); //=> [1, 2]
20
- */
21
- const sliceTo = slice(0);
22
-
23
- export default sliceTo;
@@ -1,55 +0,0 @@
1
- import { ascend, identity, map, path, pipe, sortWith, useWith } from 'ramda';
2
-
3
- const pathToAscendSort = pipe(path, ascend);
4
- const mapPathsToAscendSort = map(pathToAscendSort);
5
-
6
- /**
7
- * Sort a list of objects by a list of paths (if first path value is equivalent, sort by second, etc).
8
- *
9
- * @func sortByPaths
10
- * @memberOf RA
11
- * @since {@link https://char0n.github.io/ramda-adjunct/3.1.0|v3.1.0}
12
- * @category List
13
- * @sig [[k]] -> [{k: v}] -> [{k: v}]
14
- * @param {Array.<Array.<string>>} paths A list of paths in the list param to sort by
15
- * @param {Array.<object>} list A list of objects to be sorted
16
- * @return {Array.<object>} A new list sorted by the paths in the paths param
17
- * @example
18
- *
19
- * const alice = {
20
- * name: 'Alice',
21
- * address: {
22
- * street: 31,
23
- * zipCode: 97777,
24
- * },
25
- * };
26
- * const bob = {
27
- * name: 'Bob',
28
- * address: {
29
- * street: 31,
30
- * zipCode: 55555,
31
- * },
32
- * };
33
- * const clara = {
34
- * name: 'Clara',
35
- * address: {
36
- * street: 32,
37
- * zipCode: 90210,
38
- * },
39
- * };
40
- * const people = [clara, bob, alice]
41
- *
42
- * RA.sortByPaths([
43
- * ['address', 'street'],
44
- * ['address', 'zipCode'],
45
- * ], people); // => [bob, alice, clara]
46
- *
47
- * RA.sortByPaths([
48
- * ['address', 'zipCode'],
49
- * ['address', 'street'],
50
- * ], people); // => [bob, clara, alice]
51
- */
52
-
53
- const sortByPaths = useWith(sortWith, [mapPathsToAscendSort, identity]);
54
-
55
- export default sortByPaths;
package/src/sortByProp.js DELETED
@@ -1,45 +0,0 @@
1
- import { __, append, identity, useWith } from 'ramda';
2
-
3
- import sortByProps from './sortByProps.js';
4
-
5
- /**
6
- * Sort a list of objects by a property.
7
- *
8
- * @func sortByProp
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/3.4.0|v3.4.0}
11
- * @category List
12
- * @sig k -> [{k: v}] -> [{k: v}]
13
- * @param {Array.<string>} prop The property in the list param to sort by
14
- * @param {Array.<object>} list A list of objects to be sorted
15
- * @return {Array.<object>} A new list sorted by the property in the prop param
16
- * @example
17
- *
18
- * // sorting list of tuples
19
- * const sortByFirstItem = sortByProp(0);
20
- * const listOfTuples = [[-1, 1], [-2, 2], [-3, 3]];
21
- * sortByFirstItem(listOfTuples); // => [[-3, 3], [-2, 2], [-1, 1]]
22
- *
23
- * // sorting list of objects
24
- * const sortByName = sortByProp('name');
25
- * const alice = {
26
- * name: 'ALICE',
27
- * age: 101,
28
- * };
29
- * const bob = {
30
- * name: 'Bob',
31
- * age: -10,
32
- * };
33
- * const clara = {
34
- * name: 'clara',
35
- * age: 314.159,
36
- * };
37
- * const people = [clara, bob, alice];
38
- * sortByName(people); // => [alice, bob, clara]
39
- */
40
-
41
- const addValueInAnArray = append(__, []);
42
-
43
- const sortByProp = useWith(sortByProps, [addValueInAnArray, identity]);
44
-
45
- export default sortByProp;
@@ -1,31 +0,0 @@
1
- import { comparator, curry, either, lt, map, prop, reduce, sort } from 'ramda';
2
-
3
- /**
4
- * Sort a list of objects by a list of props (if first prop value is equivalent, sort by second, etc).
5
- *
6
- * @func sortByProps
7
- * @memberOf RA
8
- * @since {@link https://char0n.github.io/ramda-adjunct/2.26.0|v2.26.0}
9
- * @category List
10
- * @sig [k] -> [{k: v}] -> [{k: v}]
11
- * @param {Array.<string>} props A list of properties in the list param to sort by
12
- * @param {Array.<object>} list A list of objects to be sorted
13
- * @return {Array.<object>} A new list sorted by the properties in the props param
14
- * @example
15
- *
16
- * sortByProps(['num'], [{num: 3}, {num: 2}, {num: 1}])
17
- * //=> [{num: 1}, {num: 2} {num: 3}]
18
- * sortByProps(['letter', 'num'], [{num: 3, letter: 'a'}, {num: 2, letter: 'a'} {num: 1, letter: 'z'}])
19
- * //=> [ {num: 2, letter: 'a'}, {num: 3, letter: 'a'}, {num: 1, letter: 'z'}]
20
- * sortByProps(['name', 'num'], [{num: 3}, {num: 2}, {num: 1}])
21
- * //=> [{num: 1}, {num: 2}, {num: 3}]
22
- */
23
-
24
- const sortByProps = curry((props, list) => {
25
- const firstTruthy = ([head, ...tail]) => reduce(either, head, tail);
26
- const makeComparator = (propName) =>
27
- comparator((a, b) => lt(prop(propName, a), prop(propName, b)));
28
- return sort(firstTruthy(map(makeComparator, props)), list);
29
- });
30
-
31
- export default sortByProps;
package/src/spreadPath.js DELETED
@@ -1,26 +0,0 @@
1
- import { curryN, converge, mergeRight, dissocPath, pathOr } from 'ramda';
2
-
3
- /**
4
- * Spreads object under property path onto provided object.
5
- * It's like {@link RA.flattenPath|flattenPath}, but removes object under the property path.
6
- *
7
- * @func spreadPath
8
- * @memberOf RA
9
- * @since {@link https://char0n.github.io/ramda-adjunct/1.19.0|v1.19.0}
10
- * @category Object
11
- * @typedef Idx = String | Int
12
- * @sig [Idx] -> {k: v} -> {k: v}
13
- * @param {!Array.<string|number>} path The property path to spread
14
- * @param {!Object} obj The provided object
15
- * @return {!Object} The result of the spread
16
- * @see {@link RA.spreadProp|spreadProp}, {@link RA.flattenPath|flattenPath}
17
- * @example
18
- *
19
- * RA.spreadPath(
20
- * ['b1', 'b2'],
21
- * { a: 1, b1: { b2: { c: 3, d: 4 } } }
22
- * ); // => { a: 1, c: 3, d: 4, b1: {} };
23
- */
24
- const spreadPath = curryN(2, converge(mergeRight, [dissocPath, pathOr({})]));
25
-
26
- export default spreadPath;
package/src/spreadProp.js DELETED
@@ -1,25 +0,0 @@
1
- import { of, curry } from 'ramda';
2
-
3
- import spreadPath from './spreadPath.js';
4
-
5
- /**
6
- * Spreads object under property onto provided object.
7
- * It's like {@link RA.flattenProp|flattenProp}, but removes object under the property.
8
- *
9
- * @func spreadProp
10
- * @memberOf RA
11
- * @since {@link https://char0n.github.io/ramda-adjunct/1.19.0|v1.19.0}
12
- * @category Object
13
- * @typedef Idx = String | Int
14
- * @sig Idx -> {k: v} -> {k: v}
15
- * @param {!string|number} prop The property to spread
16
- * @param {!Object} obj The provided object
17
- * @return {!Object} The result of the spread
18
- * @see {@link RA.spreadPath|spreadPath}, {@link RA.flattenProp|flattenProp}
19
- * @example
20
- *
21
- * RA.spreadProp('b', { a: 1, b: { c: 3, d: 4 } }); // => { a: 1, c: 3, d: 4 };
22
- */
23
- const spreadProp = curry((prop, obj) => spreadPath(of(Array, prop), obj));
24
-
25
- export default spreadProp;
package/src/stubArray.js DELETED
@@ -1,18 +0,0 @@
1
- /**
2
- * A function that returns new empty array on every call.
3
- *
4
- * @func stubArray
5
- * @memberOf RA
6
- * @since {@link https://char0n.github.io/ramda-adjunct/2.1.0|v2.1.0}
7
- * @category Function
8
- * @sig ... -> Array
9
- * @return {Array} New empty array
10
- * @example
11
- *
12
- * RA.stubArray(); //=> []
13
- * RA.stubArray(1, 2, 3); //=> []
14
- */
15
-
16
- const stubArray = () => [];
17
-
18
- export default stubArray;
package/src/stubNull.js DELETED
@@ -1,19 +0,0 @@
1
- import { always } from 'ramda';
2
-
3
- /**
4
- * A function that returns `null`.
5
- *
6
- * @func stubNull
7
- * @memberOf RA
8
- * @since {@link https://char0n.github.io/ramda-adjunct/1.6.0|v1.6.0}
9
- * @category Function
10
- * @sig ... -> null
11
- * @return {null}
12
- * @example
13
- *
14
- * RA.stubNull(); //=> null
15
- * RA.stubNull(1, 2, 3); //=> null
16
- */
17
- const stubNull = always(null);
18
-
19
- export default stubNull;
package/src/stubObj.js DELETED
@@ -1,19 +0,0 @@
1
- /**
2
- * This function returns a new empty object.
3
- *
4
- * @func stubObj
5
- * @memberOf RA
6
- * @since {@link https://char0n.github.io/ramda-adjunct/2.1.0|v2.1.0}
7
- * @category Function
8
- * @sig ... -> Object
9
- * @aliases stubObject
10
- * @return {Object} Returns the new empty object.
11
- * @example
12
- *
13
- * RA.stubObj(); //=> {}
14
- * RA.stubObj(1, 2, 3); //=> {}
15
- */
16
-
17
- const stubObj = () => ({});
18
-
19
- export default stubObj;
package/src/stubString.js DELETED
@@ -1,19 +0,0 @@
1
- import { always } from 'ramda';
2
-
3
- /**
4
- * A function that returns empty string.
5
- *
6
- * @func stubString
7
- * @memberOf RA
8
- * @since {@link https://char0n.github.io/ramda-adjunct/2.1.0|v2.1.0}
9
- * @category Function
10
- * @sig ... -> String
11
- * @return {string} The empty string
12
- * @example
13
- *
14
- * RA.stubString(); //=> ''
15
- * RA.stubString(1, 2, 3); //=> ''
16
- */
17
- const stubString = always('');
18
-
19
- export default stubString;
@@ -1,19 +0,0 @@
1
- import { always } from 'ramda';
2
-
3
- /**
4
- * A function that returns `undefined`.
5
- *
6
- * @func stubUndefined
7
- * @memberOf RA
8
- * @since {@link https://char0n.github.io/ramda-adjunct/1.0.0|v1.0.0}
9
- * @category Function
10
- * @sig ... -> undefined
11
- * @return {undefined}
12
- * @example
13
- *
14
- * RA.stubUndefined(); //=> undefined
15
- * RA.stubUndefined(1, 2, 3); //=> undefined
16
- */
17
- const stubUndefined = always(void 0); // eslint-disable-line no-void
18
-
19
- export default stubUndefined;
@@ -1,20 +0,0 @@
1
- import { flip, subtract } from 'ramda';
2
-
3
- /**
4
- * Subtracts its first argument from its second argument.
5
- *
6
- * @func subtractNum
7
- * @memberOf RA
8
- * @since {@link https://char0n.github.io/ramda-adjunct/2.22.0|v2.22.0}
9
- * @category Math
10
- * @sig Number -> Number -> Number
11
- * @param {number} subtrahend the number to subtract
12
- * @param {number} minuend the number to subtract from
13
- * @return {number} A number representing the difference of subtracting the subtrahend from the minuend
14
- * @example
15
- *
16
- * RA.subtractNum(3, 5); //=> 2
17
- */
18
- const subtractNum = flip(subtract);
19
-
20
- export default subtractNum;
package/src/thenCatchP.js DELETED
@@ -1,27 +0,0 @@
1
- import { invoker } from 'ramda';
2
-
3
- /**
4
- * Composable shortcut for `Promise.then` that allows for success and failure callbacks.
5
- * The thenCatchP function returns a Promise. It takes three arguments: a callback function for the success of the Promise,
6
- * a callback function for the failure of the Promise, and the promise instance itself.
7
- *
8
- * @func thenCatchP
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/2.27.0|v2.27.0}
11
- * @category Function
12
- * @sig (a -> b) -> (c -> d) -> Promise a -> Promise b | d
13
- * @param {Function} onFulfilled A Function called if the Promise is fulfilled. This function has one argument, the fulfillment value
14
- * @param {Function} onRejected A Function called if the Promise is rejected. This function has one argument, the error
15
- * @param {Promise} promise Any Promise or Thenable object
16
- * @return {Promise}
17
- * @see {@link RA.resolveP|resolveP}, {@link RA.rejectP|rejectP}, {@link RA.allP|allP}
18
- * @example
19
- *
20
- * const promise = Promise.resolve(1);
21
- * const add1 = x => x + 1;
22
- *
23
- * RA.thenCatchP(add1, console.error, promise); // => Promise(2)
24
- */
25
- export const thenCatchP = invoker(2, 'then');
26
-
27
- export default thenCatchP;
package/src/toArray.js DELETED
@@ -1,32 +0,0 @@
1
- import { ifElse, values, curryN } from 'ramda';
2
-
3
- import isIterable from './isIterable.js';
4
- import isFunction from './isFunction.js';
5
- import ponyfill from './internal/ponyfills/Array.from.js';
6
-
7
- export const fromPonyfill = curryN(1, ponyfill);
8
-
9
- const fromArray = isFunction(Array.from) ? curryN(1, Array.from) : fromPonyfill;
10
-
11
- /**
12
- * Converts value to an array.
13
- *
14
- * @func toArray
15
- * @memberOf RA
16
- * @since {@link https://char0n.github.io/ramda-adjunct/2.22.0|v2.22.0}
17
- * @category List
18
- * @sig * -> [a]
19
- * @param {*} val The value to convert
20
- * @return {Array}
21
- * @example
22
- *
23
- * RA.toArray([1, 2]); //=> [1, 2]
24
- * RA.toArray({'foo': 1, 'bar': 2}); //=> [1, 2]
25
- * RA.toArray('abc'); //=> ['a', 'b', 'c']
26
- * RA.toArray(1); //=> []
27
- * RA.toArray(null); //=> []
28
- */
29
-
30
- const toArray = ifElse(isIterable, fromArray, values);
31
-
32
- export default toArray;
@@ -1,22 +0,0 @@
1
- import { curryN } from 'ramda';
2
- /**
3
- * Converts double-precision 64-bit binary format IEEE 754 to signed 32 bit integer number.
4
- *
5
- * @func toInteger32
6
- * @aliases toInt32
7
- * @memberOf RA
8
- * @since {@link https://char0n.github.io/ramda-adjunct/2.28.0|v2.28.0}
9
- * @category Math
10
- * @sig Number -> Number
11
- * @param {number} number A number
12
- * @return {number} A signed 32-bit integer number
13
- * @see {@link RA.toUInteger32|toUInteger32}, {@link http://speakingjs.com/es5/ch11.html#integers_via_bitwise_operators}
14
- * @example
15
- *
16
- * RA.toInteger32(2 ** 35); // => 0
17
- * RA.toInteger32(2 ** 30); // => 1073741824
18
- */
19
- // eslint-disable-next-line no-bitwise
20
- const toInteger32 = curryN(1, (val) => val >> 0);
21
-
22
- export default toInteger32;
package/src/toNumber.js DELETED
@@ -1,24 +0,0 @@
1
- import { ifElse, always } from 'ramda';
2
-
3
- import isCoercible from './internal/isCoercible.js';
4
-
5
- /**
6
- * Converts value to a number.
7
- *
8
- * @func toNumber
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/2.36.0|v2.36.0}
11
- * @category Type
12
- * @param {*} val The value to convert
13
- * @return {Number}
14
- * @example
15
- *
16
- * RA.toNumber(3.2); //=> 3.2
17
- * RA.toNumber(Number.MIN_VALUE); //=> 5e-324
18
- * RA.toNumber(Infinity); //=> Infinity
19
- * RA.toNumber('3.2'); //=> 3.2
20
- * RA.toNumber(Symbol('3.2')); //=> NaN
21
- */
22
- const toNumber = ifElse(isCoercible, Number, always(NaN));
23
-
24
- export default toNumber;
@@ -1,26 +0,0 @@
1
- import { curryN } from 'ramda';
2
-
3
- /**
4
- * Converts double-precision 64-bit binary format IEEE 754 to unsigned 32 bit integer number.
5
- *
6
- * @func toUinteger32
7
- * @aliases toUint32
8
- * @memberOf RA
9
- * @since {@link https://char0n.github.io/ramda-adjunct/2.28.0|v2.28.0}
10
- * @category Math
11
- * @sig Number -> Number
12
- * @param {number} val Value to be converted.
13
- * @return {number}
14
- * @see {@link RA.toInteger32|toInteger32}, {@link http://speakingjs.com/es5/ch11.html#integers_via_bitwise_operators}
15
- * @example
16
- *
17
- * RA.toUinteger32(1.5); //=> 1
18
- * RA.toInteger32(2 ** 35); // => 0
19
- * RA.toInteger32(2 ** 31); // => 2147483648
20
- * RA.toInteger32(2 ** 30); // => 1073741824
21
- */
22
-
23
- // eslint-disable-next-line no-bitwise
24
- const toUinteger32 = curryN(1, (val) => val >>> 0);
25
-
26
- export default toUinteger32;
@@ -1,25 +0,0 @@
1
- import { curry, dropLastWhile, join, pipe, split } from 'ramda';
2
-
3
- import included from './included.js';
4
-
5
- /**
6
- * Removes specified characters from the end of a string.
7
- *
8
- * @func trimCharsEnd
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/2.25.0|v2.25.0}
11
- * @category String
12
- * @sig String -> String
13
- * @param {string} chars The characters to trim
14
- * @param {string} value The string to trim
15
- * @return {string} Returns the trimmed string.
16
- * @example
17
- *
18
- * RA.trimCharsEnd('_-', '-_-abc-_-'); //=> '-_-abc'
19
- */
20
-
21
- const trimCharsEnd = curry((chars, value) =>
22
- pipe(split(''), dropLastWhile(included(chars)), join(''))(value)
23
- );
24
-
25
- export default trimCharsEnd;
@@ -1,25 +0,0 @@
1
- import { curry, dropWhile, join, pipe, split } from 'ramda';
2
-
3
- import included from './included.js';
4
-
5
- /**
6
- * Removes specified characters from the beginning of a string.
7
- *
8
- * @func trimCharsStart
9
- * @memberOf RA
10
- * @since {@link https://char0n.github.io/ramda-adjunct/2.24.0|v2.24.0}
11
- * @category String
12
- * @sig String -> String
13
- * @param {string} chars The characters to trim
14
- * @param {string} value The string to trim
15
- * @return {string} Returns the trimmed string.
16
- * @example
17
- *
18
- * RA.trimCharsStart('_-', '-_-abc-_-'); //=> 'abc-_-'
19
- */
20
-
21
- const trimCharsStart = curry((chars, value) =>
22
- pipe(split(''), dropWhile(included(chars)), join(''))(value)
23
- );
24
-
25
- export default trimCharsStart;
package/src/trimEnd.js DELETED
@@ -1,30 +0,0 @@
1
- import { invoker } from 'ramda';
2
-
3
- import ponyfill from './internal/ponyfills/String.trimEnd.js';
4
- import isFunction from './isFunction.js';
5
-
6
- export const trimEndPonyfill = ponyfill;
7
-
8
- export const trimEndInvoker = invoker(0, 'trimEnd');
9
-
10
- /**
11
- * Removes whitespace from the end of a string.
12
- *
13
- * @func trimEnd
14
- * @memberOf RA
15
- * @since {@link https://char0n.github.io/ramda-adjunct/2.22.0|v2.22.0}
16
- * @category String
17
- * @sig String -> String
18
- * @param {string} value String value to have the whitespace removed from the end
19
- * @return {string} A new string representing the calling string stripped of whitespace from its end (right end).
20
- * @see {@link RA.trimEnd|trimEnd}
21
- * @example
22
- *
23
- * RA.trimEnd('abc '); //=> 'abc'
24
- */
25
-
26
- const trimEnd = isFunction(String.prototype.trimEnd)
27
- ? trimEndInvoker
28
- : trimEndPonyfill;
29
-
30
- export default trimEnd;
package/src/trimStart.js DELETED
@@ -1,29 +0,0 @@
1
- import { invoker } from 'ramda';
2
-
3
- import ponyfill from './internal/ponyfills/String.trimStart.js';
4
- import isFunction from './isFunction.js';
5
-
6
- export const trimStartPonyfill = ponyfill;
7
-
8
- export const trimStartInvoker = invoker(0, 'trimStart');
9
-
10
- /**
11
- * Removes whitespace from the beginning of a string.
12
- *
13
- * @func trimStart
14
- * @memberOf RA
15
- * @since {@link https://char0n.github.io/ramda-adjunct/2.22.0|v2.22.0}
16
- * @category String
17
- * @sig String -> String
18
- * @param {string} value String value to have the whitespace removed from the beginning
19
- * @return {string} A new string representing the calling string stripped of whitespace from its beginning (left end).
20
- * @example
21
- *
22
- * RA.trimStart(' abc'); //=> 'abc'
23
- */
24
-
25
- const trimStart = isFunction(String.prototype.trimStart)
26
- ? trimStartInvoker
27
- : trimStartPonyfill;
28
-
29
- export default trimStart;