@sparted/shared-library 1.1.0-rc0 → 1.1.0-rc2

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 (356) hide show
  1. package/package.json +3 -7
  2. package/.circleci/config.yml +0 -40
  3. package/.eslintignore +0 -1
  4. package/.eslintrc.json +0 -25
  5. package/.gitignore +0 -37
  6. package/.idea/.gitignore +0 -8
  7. package/.idea/codeStyles/Project.xml +0 -35
  8. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  9. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  10. package/.idea/jsLinters/eslint.xml +0 -6
  11. package/.idea/misc.xml +0 -6
  12. package/.idea/modules.xml +0 -8
  13. package/.idea/shared-library.iml +0 -11
  14. package/.idea/vcs.xml +0 -6
  15. package/.idea/workspace.xml +0 -100
  16. package/.prettierrc.json +0 -6
  17. package/CHANGELOG.md +0 -97
  18. package/README.md +0 -26
  19. package/dist/package.json +0 -65
  20. package/global.d.ts +0 -2
  21. package/rollup.config.ts +0 -19
  22. package/src/array/__tests__/array-to-map.test.ts +0 -50
  23. package/src/array/__tests__/get-values-from-keys.test.ts +0 -14
  24. package/src/array/__tests__/inner-join.test.ts +0 -55
  25. package/src/array/__tests__/left-outter-join.test.ts +0 -55
  26. package/src/array/array-to-map.ts +0 -32
  27. package/src/array/get-values-from-keys.ts +0 -3
  28. package/src/array/index.ts +0 -4
  29. package/src/array/inner-join.ts +0 -10
  30. package/src/array/left-outter-join.ts +0 -10
  31. package/src/business/picture-spot/index.ts +0 -3
  32. package/src/business/types/content.ts +0 -110
  33. package/src/business/types/index.ts +0 -4
  34. package/src/business/types/media.ts +0 -18
  35. package/src/business/types/multilingual.ts +0 -3
  36. package/src/business/types/thematic.ts +0 -10
  37. package/src/cdn/__tests__/cdn.factory.test.ts +0 -150
  38. package/src/cdn/__tests__/utils.test.ts +0 -528
  39. package/src/cdn/cdn.factory.ts +0 -70
  40. package/src/cdn/index.ts +0 -2
  41. package/src/cdn/types/cdn-factory.type.ts +0 -49
  42. package/src/cdn/types/index.ts +0 -1
  43. package/src/cdn/utils/extract-info-from-url.util.ts +0 -25
  44. package/src/cdn/utils/get-cdn-from-s3-url.util.ts +0 -20
  45. package/src/cdn/utils/get-cdn-url.util.ts +0 -31
  46. package/src/cdn/utils/twicpics-transformations.util.ts +0 -9
  47. package/src/formatting/__tests__/format-number.test.ts +0 -11
  48. package/src/formatting/format-number.ts +0 -14
  49. package/src/formatting/index.ts +0 -1
  50. package/src/fp/__tests__/run-while.test.ts +0 -29
  51. package/src/fp/index.ts +0 -1
  52. package/src/fp/run-while.ts +0 -54
  53. package/src/http/__tests__/build-search-params.test.ts +0 -17
  54. package/src/http/__tests__/encode-search-object.test.ts +0 -34
  55. package/src/http/__tests__/fetch-with-timeout.test.ts +0 -50
  56. package/src/http/build-search-params.ts +0 -18
  57. package/src/http/encode-search-object.ts +0 -39
  58. package/src/http/fetch-with-timeout.ts +0 -24
  59. package/src/http/index.ts +0 -3
  60. package/src/index.ts +0 -14
  61. package/src/linked-list/__tests__/apply-diff-linked-list.test.ts +0 -103
  62. package/src/linked-list/__tests__/create-linked-list.test.ts +0 -204
  63. package/src/linked-list/__tests__/find-linked-list.test.ts +0 -40
  64. package/src/linked-list/__tests__/get-linked-list.test.ts +0 -28
  65. package/src/linked-list/__tests__/insert-linked-list.test.ts +0 -186
  66. package/src/linked-list/__tests__/linked-list-utils.test.ts +0 -252
  67. package/src/linked-list/__tests__/reduce-linked-list.test.ts +0 -31
  68. package/src/linked-list/__tests__/remove-linked-list.test.ts +0 -129
  69. package/src/linked-list/__tests__/update-linked-list.test.ts +0 -53
  70. package/src/linked-list/__tests__/while-linked-list.test.ts +0 -58
  71. package/src/linked-list/apply-diff-linked-list.ts +0 -35
  72. package/src/linked-list/create-linked-list.ts +0 -79
  73. package/src/linked-list/find-linked-list.ts +0 -26
  74. package/src/linked-list/get-linked-list.ts +0 -9
  75. package/src/linked-list/index.ts +0 -2
  76. package/src/linked-list/insert-linked-list.ts +0 -50
  77. package/src/linked-list/linked-list-utils.ts +0 -143
  78. package/src/linked-list/reduce-linked-list.ts +0 -18
  79. package/src/linked-list/remove-linked-list.ts +0 -36
  80. package/src/linked-list/type.ts +0 -38
  81. package/src/linked-list/update-linked-list.ts +0 -30
  82. package/src/linked-list/while-linked-list.ts +0 -33
  83. package/src/math/__tests__/clamp-number.test.ts +0 -30
  84. package/src/math/__tests__/interpolate.test.ts +0 -28
  85. package/src/math/__tests__/median.test.ts +0 -27
  86. package/src/math/__tests__/number-range.test.ts +0 -59
  87. package/src/math/__tests__/random-number.test.ts +0 -11
  88. package/src/math/clamp-number.ts +0 -8
  89. package/src/math/index.ts +0 -5
  90. package/src/math/interpolate.ts +0 -18
  91. package/src/math/median.ts +0 -21
  92. package/src/math/number-range.ts +0 -16
  93. package/src/math/random-number.ts +0 -10
  94. package/src/object/__tests__/merge-deep.test.ts +0 -56
  95. package/src/object/__tests__/strip-properties-from-object.test.ts +0 -65
  96. package/src/object/index.ts +0 -2
  97. package/src/object/merge-deep.ts +0 -26
  98. package/src/object/strip-properties-from-object.ts +0 -26
  99. package/src/parsing/__tests__/parse-boolean.test.ts +0 -15
  100. package/src/parsing/__tests__/parse-enum.test.ts +0 -19
  101. package/src/parsing/__tests__/parse-number.test.ts +0 -20
  102. package/src/parsing/index.ts +0 -3
  103. package/src/parsing/parse-boolean.ts +0 -10
  104. package/src/parsing/parse-enum.ts +0 -16
  105. package/src/parsing/parse-number.ts +0 -12
  106. package/src/predicates/__tests__/is-function.test.ts +0 -11
  107. package/src/predicates/__tests__/is-null.test.ts +0 -11
  108. package/src/predicates/__tests__/is-object.test.ts +0 -11
  109. package/src/predicates/__tests__/is-primitive.test.ts +0 -42
  110. package/src/predicates/__tests__/is-undefined.test.ts +0 -11
  111. package/src/predicates/__tests__/is-uuid.test.ts +0 -13
  112. package/src/predicates/index.ts +0 -5
  113. package/src/predicates/is-function.ts +0 -3
  114. package/src/predicates/is-null.ts +0 -1
  115. package/src/predicates/is-object.ts +0 -3
  116. package/src/predicates/is-primitive.ts +0 -19
  117. package/src/predicates/is-undefined.ts +0 -3
  118. package/src/predicates/is-uuid.ts +0 -3
  119. package/src/promise/__tests__/delay.test.ts +0 -13
  120. package/src/promise/__tests__/execute-or-resolve-default.test.ts +0 -25
  121. package/src/promise/__tests__/execute-with-delay.test.ts +0 -24
  122. package/src/promise/delay.ts +0 -3
  123. package/src/promise/execute-or-resolve-default.ts +0 -14
  124. package/src/promise/execute-with-delay.ts +0 -6
  125. package/src/promise/index.ts +0 -3
  126. package/src/string/__tests__/is-string-length-within-range.test.ts +0 -23
  127. package/src/string/__tests__/replace-in-template.test.ts +0 -52
  128. package/src/string/index.ts +0 -2
  129. package/src/string/is-string-length-within-range.ts +0 -10
  130. package/src/string/replace-in-template.ts +0 -45
  131. package/src/time/__tests__/convert.test.ts +0 -14
  132. package/src/time/__tests__/format-minutes.test.ts +0 -10
  133. package/src/time/__tests__/get-time-diff-as-string.test.ts +0 -128
  134. package/src/time/constants.ts +0 -4
  135. package/src/time/convert.ts +0 -5
  136. package/src/time/format-minutes.ts +0 -9
  137. package/src/time/get-time-diff-as-string.ts +0 -196
  138. package/src/time/index.ts +0 -4
  139. package/src/types/function.ts +0 -1
  140. package/src/types/general.ts +0 -15
  141. package/src/types/index.ts +0 -4
  142. package/src/types/object.ts +0 -33
  143. package/src/types/search.ts +0 -29
  144. package/tsconfig.json +0 -25
  145. package/yarn.lock +0 -4040
  146. /package/{dist/_virtual → _virtual}/_tslib.js +0 -0
  147. /package/{dist/_virtual → _virtual}/_tslib.js.map +0 -0
  148. /package/{dist/array → array}/array-to-map.d.ts +0 -0
  149. /package/{dist/array → array}/array-to-map.js +0 -0
  150. /package/{dist/array → array}/array-to-map.js.map +0 -0
  151. /package/{dist/array → array}/get-values-from-keys.d.ts +0 -0
  152. /package/{dist/array → array}/get-values-from-keys.js +0 -0
  153. /package/{dist/array → array}/get-values-from-keys.js.map +0 -0
  154. /package/{dist/array → array}/index.d.ts +0 -0
  155. /package/{dist/array → array}/index.js +0 -0
  156. /package/{dist/array → array}/index.js.map +0 -0
  157. /package/{dist/array → array}/inner-join.d.ts +0 -0
  158. /package/{dist/array → array}/inner-join.js +0 -0
  159. /package/{dist/array → array}/inner-join.js.map +0 -0
  160. /package/{dist/array → array}/left-outter-join.d.ts +0 -0
  161. /package/{dist/array → array}/left-outter-join.js +0 -0
  162. /package/{dist/array → array}/left-outter-join.js.map +0 -0
  163. /package/{dist/business → business}/picture-spot/index.d.ts +0 -0
  164. /package/{dist/business → business}/picture-spot/index.js +0 -0
  165. /package/{dist/business → business}/picture-spot/index.js.map +0 -0
  166. /package/{dist/business → business}/types/content.d.ts +0 -0
  167. /package/{dist/business → business}/types/index.d.ts +0 -0
  168. /package/{dist/business → business}/types/index.js +0 -0
  169. /package/{dist/business → business}/types/index.js.map +0 -0
  170. /package/{dist/business → business}/types/media.d.ts +0 -0
  171. /package/{dist/business → business}/types/multilingual.d.ts +0 -0
  172. /package/{dist/business → business}/types/thematic.d.ts +0 -0
  173. /package/{dist/cdn → cdn}/cdn.factory.d.ts +0 -0
  174. /package/{dist/cdn → cdn}/cdn.factory.js +0 -0
  175. /package/{dist/cdn → cdn}/cdn.factory.js.map +0 -0
  176. /package/{dist/cdn → cdn}/index.d.ts +0 -0
  177. /package/{dist/cdn → cdn}/index.js +0 -0
  178. /package/{dist/cdn → cdn}/index.js.map +0 -0
  179. /package/{dist/cdn → cdn}/types/cdn-factory.type.d.ts +0 -0
  180. /package/{dist/cdn → cdn}/types/index.d.ts +0 -0
  181. /package/{dist/cdn → cdn}/types/index.js +0 -0
  182. /package/{dist/cdn → cdn}/types/index.js.map +0 -0
  183. /package/{dist/cdn → cdn}/utils/extract-info-from-url.util.d.ts +0 -0
  184. /package/{dist/cdn → cdn}/utils/extract-info-from-url.util.js +0 -0
  185. /package/{dist/cdn → cdn}/utils/extract-info-from-url.util.js.map +0 -0
  186. /package/{dist/cdn → cdn}/utils/get-cdn-from-s3-url.util.d.ts +0 -0
  187. /package/{dist/cdn → cdn}/utils/get-cdn-from-s3-url.util.js +0 -0
  188. /package/{dist/cdn → cdn}/utils/get-cdn-from-s3-url.util.js.map +0 -0
  189. /package/{dist/cdn → cdn}/utils/get-cdn-url.util.d.ts +0 -0
  190. /package/{dist/cdn → cdn}/utils/get-cdn-url.util.js +0 -0
  191. /package/{dist/cdn → cdn}/utils/get-cdn-url.util.js.map +0 -0
  192. /package/{dist/cdn → cdn}/utils/twicpics-transformations.util.d.ts +0 -0
  193. /package/{dist/cdn → cdn}/utils/twicpics-transformations.util.js +0 -0
  194. /package/{dist/cdn → cdn}/utils/twicpics-transformations.util.js.map +0 -0
  195. /package/{dist/formatting → formatting}/format-number.d.ts +0 -0
  196. /package/{dist/formatting → formatting}/format-number.js +0 -0
  197. /package/{dist/formatting → formatting}/format-number.js.map +0 -0
  198. /package/{dist/formatting → formatting}/index.d.ts +0 -0
  199. /package/{dist/formatting → formatting}/index.js +0 -0
  200. /package/{dist/formatting → formatting}/index.js.map +0 -0
  201. /package/{dist/fp → fp}/index.d.ts +0 -0
  202. /package/{dist/fp → fp}/index.js +0 -0
  203. /package/{dist/fp → fp}/index.js.map +0 -0
  204. /package/{dist/fp → fp}/run-while.d.ts +0 -0
  205. /package/{dist/fp → fp}/run-while.js +0 -0
  206. /package/{dist/fp → fp}/run-while.js.map +0 -0
  207. /package/{dist/http → http}/build-search-params.d.ts +0 -0
  208. /package/{dist/http → http}/build-search-params.js +0 -0
  209. /package/{dist/http → http}/build-search-params.js.map +0 -0
  210. /package/{dist/http → http}/encode-search-object.d.ts +0 -0
  211. /package/{dist/http → http}/encode-search-object.js +0 -0
  212. /package/{dist/http → http}/encode-search-object.js.map +0 -0
  213. /package/{dist/http → http}/fetch-with-timeout.d.ts +0 -0
  214. /package/{dist/http → http}/fetch-with-timeout.js +0 -0
  215. /package/{dist/http → http}/fetch-with-timeout.js.map +0 -0
  216. /package/{dist/http → http}/index.d.ts +0 -0
  217. /package/{dist/http → http}/index.js +0 -0
  218. /package/{dist/http → http}/index.js.map +0 -0
  219. /package/{dist/index.d.ts → index.d.ts} +0 -0
  220. /package/{dist/index.js → index.js} +0 -0
  221. /package/{dist/index.js.map → index.js.map} +0 -0
  222. /package/{dist/linked-list → linked-list}/apply-diff-linked-list.d.ts +0 -0
  223. /package/{dist/linked-list → linked-list}/apply-diff-linked-list.js +0 -0
  224. /package/{dist/linked-list → linked-list}/apply-diff-linked-list.js.map +0 -0
  225. /package/{dist/linked-list → linked-list}/create-linked-list.d.ts +0 -0
  226. /package/{dist/linked-list → linked-list}/create-linked-list.js +0 -0
  227. /package/{dist/linked-list → linked-list}/create-linked-list.js.map +0 -0
  228. /package/{dist/linked-list → linked-list}/find-linked-list.d.ts +0 -0
  229. /package/{dist/linked-list → linked-list}/find-linked-list.js +0 -0
  230. /package/{dist/linked-list → linked-list}/find-linked-list.js.map +0 -0
  231. /package/{dist/linked-list → linked-list}/get-linked-list.d.ts +0 -0
  232. /package/{dist/linked-list → linked-list}/get-linked-list.js +0 -0
  233. /package/{dist/linked-list → linked-list}/get-linked-list.js.map +0 -0
  234. /package/{dist/linked-list → linked-list}/index.d.ts +0 -0
  235. /package/{dist/linked-list → linked-list}/index.js +0 -0
  236. /package/{dist/linked-list → linked-list}/index.js.map +0 -0
  237. /package/{dist/linked-list → linked-list}/insert-linked-list.d.ts +0 -0
  238. /package/{dist/linked-list → linked-list}/insert-linked-list.js +0 -0
  239. /package/{dist/linked-list → linked-list}/insert-linked-list.js.map +0 -0
  240. /package/{dist/linked-list → linked-list}/linked-list-utils.d.ts +0 -0
  241. /package/{dist/linked-list → linked-list}/linked-list-utils.js +0 -0
  242. /package/{dist/linked-list → linked-list}/linked-list-utils.js.map +0 -0
  243. /package/{dist/linked-list → linked-list}/reduce-linked-list.d.ts +0 -0
  244. /package/{dist/linked-list → linked-list}/reduce-linked-list.js +0 -0
  245. /package/{dist/linked-list → linked-list}/reduce-linked-list.js.map +0 -0
  246. /package/{dist/linked-list → linked-list}/remove-linked-list.d.ts +0 -0
  247. /package/{dist/linked-list → linked-list}/remove-linked-list.js +0 -0
  248. /package/{dist/linked-list → linked-list}/remove-linked-list.js.map +0 -0
  249. /package/{dist/linked-list → linked-list}/type.d.ts +0 -0
  250. /package/{dist/linked-list → linked-list}/update-linked-list.d.ts +0 -0
  251. /package/{dist/linked-list → linked-list}/update-linked-list.js +0 -0
  252. /package/{dist/linked-list → linked-list}/update-linked-list.js.map +0 -0
  253. /package/{dist/linked-list → linked-list}/while-linked-list.d.ts +0 -0
  254. /package/{dist/linked-list → linked-list}/while-linked-list.js +0 -0
  255. /package/{dist/linked-list → linked-list}/while-linked-list.js.map +0 -0
  256. /package/{dist/math → math}/clamp-number.d.ts +0 -0
  257. /package/{dist/math → math}/clamp-number.js +0 -0
  258. /package/{dist/math → math}/clamp-number.js.map +0 -0
  259. /package/{dist/math → math}/index.d.ts +0 -0
  260. /package/{dist/math → math}/index.js +0 -0
  261. /package/{dist/math → math}/index.js.map +0 -0
  262. /package/{dist/math → math}/interpolate.d.ts +0 -0
  263. /package/{dist/math → math}/interpolate.js +0 -0
  264. /package/{dist/math → math}/interpolate.js.map +0 -0
  265. /package/{dist/math → math}/median.d.ts +0 -0
  266. /package/{dist/math → math}/median.js +0 -0
  267. /package/{dist/math → math}/median.js.map +0 -0
  268. /package/{dist/math → math}/number-range.d.ts +0 -0
  269. /package/{dist/math → math}/number-range.js +0 -0
  270. /package/{dist/math → math}/number-range.js.map +0 -0
  271. /package/{dist/math → math}/random-number.d.ts +0 -0
  272. /package/{dist/math → math}/random-number.js +0 -0
  273. /package/{dist/math → math}/random-number.js.map +0 -0
  274. /package/{dist/object → object}/index.d.ts +0 -0
  275. /package/{dist/object → object}/index.js +0 -0
  276. /package/{dist/object → object}/index.js.map +0 -0
  277. /package/{dist/object → object}/merge-deep.d.ts +0 -0
  278. /package/{dist/object → object}/merge-deep.js +0 -0
  279. /package/{dist/object → object}/merge-deep.js.map +0 -0
  280. /package/{dist/object → object}/strip-properties-from-object.d.ts +0 -0
  281. /package/{dist/object → object}/strip-properties-from-object.js +0 -0
  282. /package/{dist/object → object}/strip-properties-from-object.js.map +0 -0
  283. /package/{dist/parsing → parsing}/index.d.ts +0 -0
  284. /package/{dist/parsing → parsing}/index.js +0 -0
  285. /package/{dist/parsing → parsing}/index.js.map +0 -0
  286. /package/{dist/parsing → parsing}/parse-boolean.d.ts +0 -0
  287. /package/{dist/parsing → parsing}/parse-boolean.js +0 -0
  288. /package/{dist/parsing → parsing}/parse-boolean.js.map +0 -0
  289. /package/{dist/parsing → parsing}/parse-enum.d.ts +0 -0
  290. /package/{dist/parsing → parsing}/parse-enum.js +0 -0
  291. /package/{dist/parsing → parsing}/parse-enum.js.map +0 -0
  292. /package/{dist/parsing → parsing}/parse-number.d.ts +0 -0
  293. /package/{dist/parsing → parsing}/parse-number.js +0 -0
  294. /package/{dist/parsing → parsing}/parse-number.js.map +0 -0
  295. /package/{dist/predicates → predicates}/index.d.ts +0 -0
  296. /package/{dist/predicates → predicates}/index.js +0 -0
  297. /package/{dist/predicates → predicates}/index.js.map +0 -0
  298. /package/{dist/predicates → predicates}/is-function.d.ts +0 -0
  299. /package/{dist/predicates → predicates}/is-function.js +0 -0
  300. /package/{dist/predicates → predicates}/is-function.js.map +0 -0
  301. /package/{dist/predicates → predicates}/is-null.d.ts +0 -0
  302. /package/{dist/predicates → predicates}/is-null.js +0 -0
  303. /package/{dist/predicates → predicates}/is-null.js.map +0 -0
  304. /package/{dist/predicates → predicates}/is-object.d.ts +0 -0
  305. /package/{dist/predicates → predicates}/is-object.js +0 -0
  306. /package/{dist/predicates → predicates}/is-object.js.map +0 -0
  307. /package/{dist/predicates → predicates}/is-primitive.d.ts +0 -0
  308. /package/{dist/predicates → predicates}/is-primitive.js +0 -0
  309. /package/{dist/predicates → predicates}/is-primitive.js.map +0 -0
  310. /package/{dist/predicates → predicates}/is-undefined.d.ts +0 -0
  311. /package/{dist/predicates → predicates}/is-undefined.js +0 -0
  312. /package/{dist/predicates → predicates}/is-undefined.js.map +0 -0
  313. /package/{dist/predicates → predicates}/is-uuid.d.ts +0 -0
  314. /package/{dist/promise → promise}/delay.d.ts +0 -0
  315. /package/{dist/promise → promise}/delay.js +0 -0
  316. /package/{dist/promise → promise}/delay.js.map +0 -0
  317. /package/{dist/promise → promise}/execute-or-resolve-default.d.ts +0 -0
  318. /package/{dist/promise → promise}/execute-or-resolve-default.js +0 -0
  319. /package/{dist/promise → promise}/execute-or-resolve-default.js.map +0 -0
  320. /package/{dist/promise → promise}/execute-with-delay.d.ts +0 -0
  321. /package/{dist/promise → promise}/execute-with-delay.js +0 -0
  322. /package/{dist/promise → promise}/execute-with-delay.js.map +0 -0
  323. /package/{dist/promise → promise}/index.d.ts +0 -0
  324. /package/{dist/promise → promise}/index.js +0 -0
  325. /package/{dist/promise → promise}/index.js.map +0 -0
  326. /package/{dist/string → string}/index.d.ts +0 -0
  327. /package/{dist/string → string}/index.js +0 -0
  328. /package/{dist/string → string}/index.js.map +0 -0
  329. /package/{dist/string → string}/is-string-length-within-range.d.ts +0 -0
  330. /package/{dist/string → string}/is-string-length-within-range.js +0 -0
  331. /package/{dist/string → string}/is-string-length-within-range.js.map +0 -0
  332. /package/{dist/string → string}/replace-in-template.d.ts +0 -0
  333. /package/{dist/string → string}/replace-in-template.js +0 -0
  334. /package/{dist/string → string}/replace-in-template.js.map +0 -0
  335. /package/{dist/time → time}/constants.d.ts +0 -0
  336. /package/{dist/time → time}/constants.js +0 -0
  337. /package/{dist/time → time}/constants.js.map +0 -0
  338. /package/{dist/time → time}/convert.d.ts +0 -0
  339. /package/{dist/time → time}/convert.js +0 -0
  340. /package/{dist/time → time}/convert.js.map +0 -0
  341. /package/{dist/time → time}/format-minutes.d.ts +0 -0
  342. /package/{dist/time → time}/format-minutes.js +0 -0
  343. /package/{dist/time → time}/format-minutes.js.map +0 -0
  344. /package/{dist/time → time}/get-time-diff-as-string.d.ts +0 -0
  345. /package/{dist/time → time}/get-time-diff-as-string.js +0 -0
  346. /package/{dist/time → time}/get-time-diff-as-string.js.map +0 -0
  347. /package/{dist/time → time}/index.d.ts +0 -0
  348. /package/{dist/time → time}/index.js +0 -0
  349. /package/{dist/time → time}/index.js.map +0 -0
  350. /package/{dist/types → types}/function.d.ts +0 -0
  351. /package/{dist/types → types}/general.d.ts +0 -0
  352. /package/{dist/types → types}/index.d.ts +0 -0
  353. /package/{dist/types → types}/index.js +0 -0
  354. /package/{dist/types → types}/index.js.map +0 -0
  355. /package/{dist/types → types}/object.d.ts +0 -0
  356. /package/{dist/types → types}/search.d.ts +0 -0
@@ -1,31 +0,0 @@
1
- import type { GetCdnUrl, InstanceMapper, Transformation, TransformationQueries } from '../types';
2
-
3
- const DEFAULT_THUMBNAIL_CONFIG: Transformation = {
4
- width: 300,
5
- height: 300,
6
- };
7
-
8
- type FactoryConfig = {
9
- domain: `https://${string}`;
10
- instanceMapper: InstanceMapper;
11
- transformationQueries: TransformationQueries;
12
- cacheVersion?: number;
13
- };
14
-
15
- export const genCacheVersionQuery = (cacheVersion?: number) => (cacheVersion ? `v=${cacheVersion}` : '');
16
-
17
- export const getCdnUrlFactory =
18
- (config: FactoryConfig): GetCdnUrl =>
19
- (instanceId, path, params = {}) => {
20
- const { domain, instanceMapper, transformationQueries, cacheVersion } = config;
21
-
22
- const { transformation = params.asThumbnail ? DEFAULT_THUMBNAIL_CONFIG : {} } = params;
23
-
24
- const transformationQuery: string = transformationQueries(transformation);
25
- const cacheVersionQuery = genCacheVersionQuery(cacheVersion);
26
- const hasQueryParams = [transformationQuery, cacheVersionQuery].some((query) => query !== '');
27
-
28
- return `${domain}${instanceMapper(instanceId)}${path}${hasQueryParams ? '?' : ''}${transformationQuery}${
29
- cacheVersionQuery ? `&${cacheVersionQuery}` : ''
30
- }`;
31
- };
@@ -1,9 +0,0 @@
1
- import { TwicpicsTransformationChain } from '../types';
2
-
3
- export const twicpicsTransformationChainToString = (transformationChain: TwicpicsTransformationChain): string => {
4
- if (transformationChain.length === 0) return '';
5
-
6
- const transformations = transformationChain.map(([key, value]) => `${key}=${value}`).join('/');
7
-
8
- return `twic=v1/${transformations}`;
9
- };
@@ -1,11 +0,0 @@
1
- import { formatNumber } from '../format-number';
2
-
3
- describe('formatNumber', () => {
4
- it('should format numbers correctly', () => {
5
- expect(formatNumber(48)).toBe('48');
6
- expect(formatNumber(999)).toBe('999');
7
- expect(formatNumber(1000)).toBe('1.0k');
8
- expect(formatNumber(42869)).toBe('42.8k');
9
- expect(formatNumber(992169)).toBe('992.1k');
10
- });
11
- });
@@ -1,14 +0,0 @@
1
- const DECIMAL_SEPARATOR = '.';
2
- const THOUSAND_UNIT = 'k';
3
-
4
- export const formatNumber = (n: number): string => {
5
- const numString = String(n);
6
- if (n < 1000) {
7
- return numString;
8
- }
9
-
10
- const decimalsMinusLast = numString.slice(0, numString.length - 3);
11
- const lastDecimal = numString.slice(numString.length - 3, numString.length - 2);
12
-
13
- return `${decimalsMinusLast}${DECIMAL_SEPARATOR}${lastDecimal}${THOUSAND_UNIT}`;
14
- };
@@ -1 +0,0 @@
1
- export * from './format-number';
@@ -1,29 +0,0 @@
1
- import { runWhile } from '../run-while';
2
-
3
- describe('runWhile', () => {
4
- it('should run while the predicate is true and return the right interation count', () => {
5
- const { result, iterationCount } = runWhile({
6
- predicate: (counter) => counter <= 9,
7
- callback: (counter) => counter + 1,
8
- initialValue: 0,
9
- });
10
-
11
- expect(result).toStrictEqual(10);
12
- expect(iterationCount).toStrictEqual(10);
13
- });
14
-
15
- it('should throw an error when the iteration limit is reached', () => {
16
- const predicateMock = jest.fn().mockReturnValue(true);
17
-
18
- const { iterationCount } = runWhile({
19
- predicate: predicateMock,
20
- callback: (counter) => counter + 1,
21
- initialValue: 0,
22
- iterationLimit: 89,
23
- });
24
-
25
- // Called once outside the while loop
26
- expect(predicateMock).toHaveBeenCalledTimes(90);
27
- expect(iterationCount).toStrictEqual(89);
28
- });
29
- });
package/src/fp/index.ts DELETED
@@ -1 +0,0 @@
1
- export * from './run-while';
@@ -1,54 +0,0 @@
1
- export type RunWhileConfig<T> = {
2
- /**
3
- * Return a boolean to keep running the callback or not.
4
- */
5
- predicate: (current: T) => boolean,
6
- /**
7
- * The function to run while `predicate` returns `true`
8
- */
9
- callback: (current: T, iteractionCount: number) => T,
10
- /**
11
- * `callback` will not be run again if `iterationCount` exceeds this value.
12
- * Default to `Infinity`
13
- */
14
- iterationLimit?: number,
15
- /**
16
- * The first value passed to the callback.
17
- */
18
- initialValue: T,
19
- };
20
-
21
- export type RunWhileFn = <T>(config: RunWhileConfig<T>) => {
22
- /**
23
- * The callback last result.
24
- */
25
- result: T,
26
- iterationCount: number,
27
- };
28
-
29
- /**
30
- * Run the callback while the predicate return true. Throws an
31
- * error if the iteration count exceeds the iteration limit.
32
- */
33
- export const runWhile: RunWhileFn = ({ predicate, callback, initialValue, iterationLimit = Infinity }) => {
34
- let counter = 0;
35
- let currentValue = initialValue;
36
- let shouldRun = predicate(currentValue);
37
-
38
- while (shouldRun) {
39
- if (counter >= iterationLimit) {
40
- break;
41
- }
42
-
43
- const nextValue = callback(currentValue, counter);
44
-
45
- counter += 1;
46
- shouldRun = predicate(nextValue);
47
- currentValue = nextValue;
48
- }
49
-
50
- return {
51
- result: currentValue,
52
- iterationCount: counter,
53
- };
54
- };
@@ -1,17 +0,0 @@
1
- import { buildSearchParams } from '../build-search-params';
2
-
3
- describe('buildSearchParams', () => {
4
- it('should remove undefined values', () => {
5
- const params = {
6
- param1: 'value1',
7
- param2: undefined,
8
- param3: 'value3',
9
- };
10
- const searchParams = buildSearchParams(params);
11
-
12
- expect(searchParams.toString()).toStrictEqual('param1=value1&param3=value3');
13
- expect(searchParams.get('param1')).toStrictEqual('value1');
14
- expect(searchParams.get('param2')).toStrictEqual(null);
15
- expect(searchParams.get('param3')).toStrictEqual('value3');
16
- });
17
- });
@@ -1,34 +0,0 @@
1
- import { encodeSearchObject } from '../encode-search-object';
2
-
3
- describe('encodeSearchObject', () => {
4
- it('should not encode sort and query if undefined', () => {
5
- const url = encodeSearchObject({
6
- limit: 10,
7
- offset: 15,
8
- });
9
-
10
- expect(url).toStrictEqual('offset=15&limit=10');
11
- });
12
-
13
- it('should encode sort and query twice', () => {
14
- const url = encodeSearchObject({
15
- limit: 10,
16
- offset: 0,
17
- sort: {
18
- name: 'asc',
19
- editionDate: 'desc',
20
- },
21
- query: {
22
- name: 'The name of something',
23
- status: 'published',
24
- },
25
- });
26
-
27
- expect(url).toStrictEqual([
28
- 'offset=0',
29
- 'limit=10',
30
- 'sort=name%3Aasc%2BeditionDate%3Adesc',
31
- 'query=name%3AThe%2520name%2520of%2520something%2Bstatus%3Apublished',
32
- ].join('&'));
33
- });
34
- });
@@ -1,50 +0,0 @@
1
- /* eslint-disable import/first -- https://github.com/jefflau/jest-fetch-mock#to-setup-for-an-individual-test */
2
-
3
- import fetchMock, { enableFetchMocks } from 'jest-fetch-mock';
4
-
5
- // must appear before any other imports
6
- enableFetchMocks();
7
-
8
- import { fetchWithTimeout } from '../fetch-with-timeout';
9
-
10
- describe('fetchWithTimeout', () => {
11
- beforeEach(() => {
12
- fetchMock.resetMocks();
13
- });
14
-
15
- it('should call fetch with the same parameters', async () => {
16
- const url = 'http://some/url';
17
- const init = {
18
- headers: {
19
- some: 'header',
20
- },
21
- };
22
-
23
- fetchMock.mockResponseOnce('mock response');
24
- const response = await fetchWithTimeout(url, init);
25
-
26
- expect(fetch as any).toHaveBeenNthCalledWith(1, url, expect.objectContaining(init));
27
- expect(await response.text()).toBe('mock response');
28
- });
29
-
30
- it('should abort the request if timeout has elapsed', async () => {
31
- jest.useFakeTimers();
32
- const TIMEOUT = 3000;
33
- const REQUEST_TIMEOUT = TIMEOUT * 2;
34
-
35
- // This request will take too long
36
- fetchMock.mockResponseOnce(async () => {
37
- jest.advanceTimersByTime(REQUEST_TIMEOUT);
38
- return 'mock response';
39
- });
40
-
41
- // https://github.com/jefflau/jest-fetch-mock/issues/159
42
- (global as any).DOMException = Error;
43
-
44
- const responsePromise = fetchWithTimeout('http://some/url', { timeout: TIMEOUT });
45
-
46
- jest.advanceTimersByTime(TIMEOUT + 100);
47
-
48
- await expect(responsePromise).rejects.toThrow('The operation was aborted. ');
49
- });
50
- });
@@ -1,18 +0,0 @@
1
- import type { Primitive } from '../types';
2
-
3
- export const buildSearchParams = (params: Record<string, Primitive | undefined>): URLSearchParams => {
4
- const definedParams = Object
5
- .entries(params)
6
- .reduce((acc, [key, value]) => {
7
- if (value !== undefined) {
8
- return {
9
- ...acc,
10
- [key]: String(value),
11
- };
12
- }
13
-
14
- return acc;
15
- }, {} as Record<string, string>);
16
-
17
- return new URLSearchParams(definedParams);
18
- };
@@ -1,39 +0,0 @@
1
- import { SearchObject } from '../types';
2
-
3
- export type EncodingConfig = {
4
- keyValueDelimiter: string,
5
- pairDelimiter: string,
6
- };
7
-
8
- const defaultEncodingConfig: EncodingConfig = {
9
- keyValueDelimiter: ':',
10
- pairDelimiter: '+',
11
- };
12
-
13
- export const encodeSearchValue = <T extends Record<string, string>>(
14
- searchValue: T,
15
- config: EncodingConfig = defaultEncodingConfig,
16
- ) => {
17
- const { pairDelimiter, keyValueDelimiter } = config;
18
-
19
- return Object.entries(searchValue)
20
- .map(([key, value]) => `${key}${keyValueDelimiter}${encodeURI(value)}`)
21
- .join(pairDelimiter);
22
- };
23
-
24
- export const encodeSearchObject = (searchObject: SearchObject): string => {
25
- const { sort, query, offset, limit } = searchObject;
26
-
27
- const sortEncoded = sort ? encodeSearchValue(sort) : null;
28
- const queryEncoded = query ? encodeSearchValue(query) : null;
29
-
30
- const urlParams = new URLSearchParams({
31
- offset: offset.toString(),
32
- limit: limit.toString(),
33
- });
34
-
35
- if (sortEncoded) urlParams.append('sort', sortEncoded);
36
- if (queryEncoded) urlParams.append('query', queryEncoded);
37
-
38
- return urlParams.toString();
39
- };
@@ -1,24 +0,0 @@
1
- export type RequestInitWithTimeout = RequestInit & {
2
- timeout?: number
3
- };
4
-
5
- /**
6
- * Use fetch to perform an HTTP request
7
- * Add an optional timeout, that will abort the request if it has not returned before
8
- */
9
- export const fetchWithTimeout = (input: RequestInfo, init?: Omit<RequestInitWithTimeout, 'signal'> | undefined): Promise<Response> => {
10
- const abortController = new AbortController();
11
-
12
- const { timeout, ...rest } = init || {};
13
-
14
- const params = {
15
- ...rest,
16
- signal: abortController.signal,
17
- };
18
-
19
- if (timeout !== undefined) {
20
- setTimeout(() => abortController.abort(), timeout);
21
- }
22
-
23
- return fetch(input, params);
24
- };
package/src/http/index.ts DELETED
@@ -1,3 +0,0 @@
1
- export * from './encode-search-object';
2
- export * from './fetch-with-timeout';
3
- export * from './build-search-params';
package/src/index.ts DELETED
@@ -1,14 +0,0 @@
1
- export * from './array';
2
- export * from './cdn';
3
- export * from './time';
4
- export * from './formatting';
5
- export * from './fp';
6
- export * from './http';
7
- export * from './linked-list';
8
- export * from './math';
9
- export * from './object';
10
- export * from './parsing';
11
- export * from './predicates';
12
- export * from './promise';
13
- export * from './string';
14
- export * from './types';
@@ -1,103 +0,0 @@
1
- import { createLinkedList } from '../create-linked-list';
2
- import { applyDiffLinkedList } from '../apply-diff-linked-list';
3
-
4
- describe('applyDiffLinkedList', () => {
5
- const items = {
6
- 1: { id: '1', nextId: '2', previousId: null, value: 1 },
7
- 2: { id: '2', nextId: '3', previousId: '1', value: 2 },
8
- 3: { id: '3', nextId: '4', previousId: '2', value: 3 },
9
- 4: { id: '4', nextId: null, previousId: '3', value: 4 },
10
- };
11
-
12
- const linkedList = createLinkedList('1', items);
13
-
14
- it('should handle a delete', () => {
15
- const newList = applyDiffLinkedList(items['2'], null, linkedList);
16
-
17
- expect(newList.items).toStrictEqual({
18
- 1: { id: '1', nextId: '3', previousId: null, value: 1 },
19
- 3: { id: '3', nextId: '4', previousId: '1', value: 3 },
20
- 4: { id: '4', nextId: null, previousId: '3', value: 4 },
21
- });
22
- expect(newList.head).toStrictEqual(newList.items['1']);
23
- });
24
-
25
- it('should handle an insert', () => {
26
- const insertedItem = { id: '5', nextId: null, previousId: '4', value: 5 };
27
- const newList = applyDiffLinkedList(null, insertedItem, linkedList);
28
-
29
- expect(newList.items).toStrictEqual({
30
- 1: { id: '1', nextId: '2', previousId: null, value: 1 },
31
- 2: { id: '2', nextId: '3', previousId: '1', value: 2 },
32
- 3: { id: '3', nextId: '4', previousId: '2', value: 3 },
33
- 4: { id: '4', nextId: '5', previousId: '3', value: 4 },
34
- 5: { id: '5', nextId: null, previousId: '4', value: 5 },
35
- });
36
- expect(newList.head).toStrictEqual(newList.items['1']);
37
- });
38
-
39
- it('should throw an error if the two items are null', () => {
40
- expect(() => applyDiffLinkedList(null, null, linkedList)).toThrowError(
41
- 'Cannot have both before & after as null',
42
- );
43
- });
44
-
45
- it('should throw an error if it tries to change the id', () => {
46
- const before = linkedList.items['2'];
47
- const after = { ...before, id: '6' };
48
-
49
- expect(() => applyDiffLinkedList(before, after, linkedList)).toThrowError(
50
- 'Cannot change id of a ListNode',
51
- );
52
- });
53
-
54
- it('should update a node if it has the same nextId', () => {
55
- const before = linkedList.items['2'];
56
- const after = { ...before, value: 22 };
57
-
58
- const newList = applyDiffLinkedList(before, after, linkedList);
59
-
60
- expect(newList.items).toStrictEqual({
61
- 1: { id: '1', nextId: '2', previousId: null, value: 1 },
62
- 2: { id: '2', nextId: '3', previousId: '1', value: 22 },
63
- 3: { id: '3', nextId: '4', previousId: '2', value: 3 },
64
- 4: { id: '4', nextId: null, previousId: '3', value: 4 },
65
- });
66
- expect(newList.head).toStrictEqual(newList.items['1']);
67
- });
68
-
69
- it('should update a node if it has the same nextId', () => {
70
- const before = linkedList.items['2'];
71
- const after = { ...before, value: 22 };
72
-
73
- const newList = applyDiffLinkedList(before, after, linkedList);
74
-
75
- expect(newList.items).toStrictEqual({
76
- 1: { id: '1', nextId: '2', previousId: null, value: 1 },
77
- 2: { id: '2', nextId: '3', previousId: '1', value: 22 },
78
- 3: { id: '3', nextId: '4', previousId: '2', value: 3 },
79
- 4: { id: '4', nextId: null, previousId: '3', value: 4 },
80
- });
81
- expect(newList.head).toStrictEqual(newList.items['1']);
82
- });
83
-
84
- it('should handle a reorder and an update', () => {
85
- const before = linkedList.items['2'];
86
- const after = {
87
- ...before,
88
- value: 22,
89
- nextId: '4',
90
- previousId: '3',
91
- };
92
-
93
- const newList = applyDiffLinkedList(before, after, linkedList);
94
-
95
- expect(newList.items).toStrictEqual({
96
- 1: { id: '1', nextId: '3', previousId: null, value: 1 },
97
- 3: { id: '3', nextId: '2', previousId: '1', value: 3 },
98
- 2: { id: '2', nextId: '4', previousId: '3', value: 22 },
99
- 4: { id: '4', nextId: null, previousId: '2', value: 4 },
100
- });
101
- expect(newList.head).toStrictEqual(newList.items['1']);
102
- });
103
- });
@@ -1,204 +0,0 @@
1
- import { createLinkedList } from '../create-linked-list';
2
-
3
- import { reduceLinkedList } from '../reduce-linked-list';
4
- import { findLinkedList } from '../find-linked-list';
5
- import { whileLinkedList } from '../while-linked-list';
6
- import { removeLinkedList } from '../remove-linked-list';
7
- import { insertLinkedList } from '../insert-linked-list';
8
- import { getLinkedList } from '../get-linked-list';
9
- import { updateLinkedList } from '../update-linked-list';
10
- import { applyDiffLinkedList } from '../apply-diff-linked-list';
11
-
12
- jest.mock('../reduce-linked-list');
13
- jest.mock('../find-linked-list');
14
- jest.mock('../while-linked-list');
15
- jest.mock('../remove-linked-list');
16
- jest.mock('../insert-linked-list');
17
- jest.mock('../get-linked-list');
18
- jest.mock('../update-linked-list');
19
- jest.mock('../apply-diff-linked-list');
20
-
21
- describe('createLinkedList', () => {
22
- it('should create an empty list', () => {
23
- const linkedList = createLinkedList(null, {});
24
-
25
- expect(linkedList.head).toBeNull();
26
- expect(linkedList.items).toStrictEqual({});
27
- expect(linkedList.format).toBeNull();
28
- });
29
-
30
- it('should have the right head', () => {
31
- const node = { title: 'Micro knowledge', id: '2', nextId: null };
32
- const map = { 2: node };
33
-
34
- const linkedList = createLinkedList('2', map);
35
-
36
- expect(linkedList.head).toStrictEqual(node);
37
- });
38
-
39
- it('should set format to single', () => {
40
- const map = {
41
- 1: { id: '1', nextId: '2' },
42
- 2: { id: '2', nextId: null },
43
- };
44
-
45
- const linkedList = createLinkedList('1', map);
46
-
47
- expect(linkedList.format).toStrictEqual('single');
48
- });
49
-
50
- it('should set format to double', () => {
51
- const map = {
52
- 1: { id: '1', nextId: '2', previousId: null },
53
- 2: { id: '2', nextId: null, previousId: '1' },
54
- };
55
-
56
- const linkedList = createLinkedList('1', map);
57
-
58
- expect(linkedList.format).toStrictEqual('double');
59
- });
60
-
61
- it('should throw an error if some nodes are double linkedand some are single linked', () => {
62
- const map = {
63
- 1: { id: '1', nextId: '2', previousId: null },
64
- 2: { id: '2', nextId: null },
65
- };
66
-
67
- expect(() => createLinkedList('1', map)).toThrowError(
68
- 'Invalid previous node in the linked list',
69
- );
70
- });
71
-
72
- it('should throw an error if some nodes have invalid previous', () => {
73
- const map = {
74
- 1: { id: '1', nextId: '2', previousId: null },
75
- 2: { id: '2', nextId: '3', previousId: '1' },
76
- 3: { id: '3', nextId: null, previousId: '1' },
77
- };
78
-
79
- expect(() => createLinkedList('1', map)).toThrowError(
80
- 'Invalid previous node in the linked list',
81
- );
82
- });
83
-
84
- it('should have the right size', () => {
85
- const map = {
86
- 1: { id: '1', nextId: '2', previousId: null },
87
- 2: { id: '2', nextId: '3', previousId: '1' },
88
- 3: { id: '3', nextId: null, previousId: '2' },
89
- };
90
-
91
- const linkedList = createLinkedList('1', map);
92
-
93
- expect(linkedList.size).toStrictEqual(3);
94
- });
95
-
96
- describe('methods', () => {
97
- const reduceLinkedListMocked = jest.mocked(reduceLinkedList);
98
- const findLinkedListMocked = jest.mocked(findLinkedList);
99
- const whileLinkedListMocked = jest.mocked(whileLinkedList);
100
- const removeLinkedListMocked = jest.mocked(removeLinkedList);
101
- const insertLinkedListMocked = jest.mocked(insertLinkedList);
102
- const getLinkedListMocked = jest.mocked(getLinkedList);
103
- const updateLinkedListMocked = jest.mocked(updateLinkedList);
104
- const applyDiffLinkedListMocked = jest.mocked(applyDiffLinkedList);
105
-
106
- const record = {
107
- 1: { id: '1', nextId: '2', previousId: null },
108
- 2: { id: '2', nextId: null, previousId: '1' },
109
- };
110
- const linkedList = createLinkedList('1', record);
111
- const list = {
112
- headId: '1',
113
- items: record,
114
- };
115
- const manipulationConfig = {
116
- factory: expect.toBeFunction(),
117
- format: 'double',
118
- list,
119
- };
120
-
121
- beforeEach(() => {
122
- jest.clearAllMocks();
123
- });
124
-
125
- it('it should have reduce', () => {
126
- reduceLinkedListMocked.mockReturnValue('reduce');
127
-
128
- const accumulatorFunction = jest.fn().mockName('accumulatorFunction');
129
- const result = linkedList.reduce(accumulatorFunction, 'init');
130
-
131
- expect(result).toStrictEqual('reduce');
132
- expect(reduceLinkedListMocked).toHaveBeenCalledWith(accumulatorFunction, 'init', list);
133
- });
134
-
135
- it('it should have find', () => {
136
- findLinkedListMocked.mockReturnValue('find' as any);
137
-
138
- const findPredicate = jest.fn().mockName('findPredicate');
139
- const result = linkedList.find(findPredicate);
140
-
141
- expect(result).toStrictEqual('find');
142
- expect(findLinkedListMocked).toHaveBeenCalledWith(findPredicate, list);
143
- });
144
-
145
- it('it should have while', () => {
146
- whileLinkedListMocked.mockReturnValue('while' as any);
147
-
148
- const whilePredicate = jest.fn().mockName('whilePredicate');
149
- const result = linkedList.while(whilePredicate, '2');
150
-
151
- expect(result).toStrictEqual('while');
152
- expect(whileLinkedListMocked).toHaveBeenCalledWith(whilePredicate, list, '2');
153
- });
154
-
155
- it('it should have remove', () => {
156
- removeLinkedListMocked.mockReturnValue('remove' as any);
157
-
158
- const result = linkedList.remove('3');
159
-
160
- expect(result).toStrictEqual('remove');
161
- expect(removeLinkedListMocked).toHaveBeenCalledWith('3', manipulationConfig);
162
- });
163
-
164
- it('it should have insert', () => {
165
- insertLinkedListMocked.mockReturnValue('insert' as any);
166
-
167
- const item = { id: '5', nextId: '6', previousId: '4' };
168
- const result = linkedList.insert(item as any);
169
-
170
- expect(result).toStrictEqual('insert');
171
- expect(insertLinkedListMocked).toHaveBeenCalledWith(item, manipulationConfig);
172
- });
173
-
174
- it('it should have get', () => {
175
- getLinkedListMocked.mockReturnValue('get' as any);
176
-
177
- const result = linkedList.get('5');
178
-
179
- expect(result).toStrictEqual('get');
180
- expect(getLinkedListMocked).toHaveBeenCalledWith('5', list);
181
- });
182
-
183
- it('it should have update', () => {
184
- updateLinkedListMocked.mockReturnValue('update' as any);
185
-
186
- const updatedItem = { id: '5', nextId: '6', previousId: '4' };
187
- const result = linkedList.update(updatedItem as any);
188
-
189
- expect(result).toStrictEqual('update');
190
- expect(updateLinkedListMocked).toHaveBeenCalledWith(updatedItem, manipulationConfig);
191
- });
192
-
193
- it('it should have applyDiff', () => {
194
- applyDiffLinkedListMocked.mockReturnValue('applydiff' as any);
195
-
196
- const before = { id: '5', nextId: '6', previousId: '4' };
197
- const after = { id: '5', nextId: '7', previousId: '4' };
198
- const result = linkedList.applyDiff(before as any, after as any);
199
-
200
- expect(result).toStrictEqual('applydiff');
201
- expect(applyDiffLinkedListMocked).toHaveBeenCalledWith(before, after, linkedList);
202
- });
203
- });
204
- });