@sparted/shared-library 1.2.0 → 1.2.2

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 (374) hide show
  1. package/business/picture-spot/index.d.ts +37 -0
  2. package/business/types/campaign.d.ts +12 -0
  3. package/{dist/business → business}/types/content.d.ts +7 -8
  4. package/business/types/content.js.map +1 -0
  5. package/{src/business/types/index.ts → business/types/index.d.ts} +5 -5
  6. package/package.json +1 -1
  7. package/.circleci/config.yml +0 -40
  8. package/.eslintignore +0 -1
  9. package/.eslintrc.json +0 -25
  10. package/.gitignore +0 -37
  11. package/.idea/.gitignore +0 -8
  12. package/.idea/codeStyles/Project.xml +0 -35
  13. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  14. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  15. package/.idea/jsLinters/eslint.xml +0 -6
  16. package/.idea/misc.xml +0 -6
  17. package/.idea/modules.xml +0 -8
  18. package/.idea/shared-library.iml +0 -11
  19. package/.idea/vcs.xml +0 -6
  20. package/.idea/workspace.xml +0 -108
  21. package/.prettierrc.json +0 -6
  22. package/CHANGELOG.md +0 -130
  23. package/README.md +0 -26
  24. package/dist/business/picture-spot/index.d.ts +0 -2
  25. package/dist/business/types/content.js.map +0 -1
  26. package/dist/business/types/index.d.ts +0 -4
  27. package/dist/package.json +0 -66
  28. package/global.d.ts +0 -2
  29. package/rollup.config.ts +0 -19
  30. package/src/array/__tests__/array-to-map.test.ts +0 -50
  31. package/src/array/__tests__/get-values-from-keys.test.ts +0 -14
  32. package/src/array/__tests__/inner-join.test.ts +0 -55
  33. package/src/array/__tests__/left-outter-join.test.ts +0 -55
  34. package/src/array/array-to-map.ts +0 -32
  35. package/src/array/get-values-from-keys.ts +0 -3
  36. package/src/array/index.ts +0 -4
  37. package/src/array/inner-join.ts +0 -10
  38. package/src/array/left-outter-join.ts +0 -10
  39. package/src/business/picture-spot/index.ts +0 -3
  40. package/src/business/types/campaign.ts +0 -14
  41. package/src/business/types/content.ts +0 -155
  42. package/src/business/types/media.ts +0 -18
  43. package/src/business/types/multilingual.ts +0 -46
  44. package/src/business/types/thematic.ts +0 -10
  45. package/src/cdn/__tests__/cdn.factory.test.ts +0 -150
  46. package/src/cdn/__tests__/utils.test.ts +0 -528
  47. package/src/cdn/cdn.factory.ts +0 -70
  48. package/src/cdn/index.ts +0 -2
  49. package/src/cdn/types/cdn-factory.type.ts +0 -49
  50. package/src/cdn/types/index.ts +0 -1
  51. package/src/cdn/utils/extract-info-from-url.util.ts +0 -25
  52. package/src/cdn/utils/get-cdn-from-s3-url.util.ts +0 -20
  53. package/src/cdn/utils/get-cdn-url.util.ts +0 -31
  54. package/src/cdn/utils/twicpics-transformations.util.ts +0 -9
  55. package/src/color/__tests__/get-contrast-color.test.ts +0 -22
  56. package/src/color/get-contrast-color.ts +0 -18
  57. package/src/color/index.ts +0 -1
  58. package/src/formatting/__tests__/format-number.test.ts +0 -11
  59. package/src/formatting/format-number.ts +0 -14
  60. package/src/formatting/index.ts +0 -1
  61. package/src/fp/__tests__/run-while.test.ts +0 -29
  62. package/src/fp/index.ts +0 -1
  63. package/src/fp/run-while.ts +0 -54
  64. package/src/http/__tests__/build-search-params.test.ts +0 -17
  65. package/src/http/__tests__/encode-search-object.test.ts +0 -34
  66. package/src/http/__tests__/fetch-with-timeout.test.ts +0 -50
  67. package/src/http/build-search-params.ts +0 -18
  68. package/src/http/encode-search-object.ts +0 -39
  69. package/src/http/fetch-with-timeout.ts +0 -24
  70. package/src/http/index.ts +0 -3
  71. package/src/index.ts +0 -15
  72. package/src/linked-list/__tests__/apply-diff-linked-list.test.ts +0 -103
  73. package/src/linked-list/__tests__/create-linked-list.test.ts +0 -204
  74. package/src/linked-list/__tests__/find-linked-list.test.ts +0 -40
  75. package/src/linked-list/__tests__/get-linked-list.test.ts +0 -28
  76. package/src/linked-list/__tests__/insert-linked-list.test.ts +0 -186
  77. package/src/linked-list/__tests__/linked-list-utils.test.ts +0 -252
  78. package/src/linked-list/__tests__/reduce-linked-list.test.ts +0 -31
  79. package/src/linked-list/__tests__/remove-linked-list.test.ts +0 -129
  80. package/src/linked-list/__tests__/update-linked-list.test.ts +0 -53
  81. package/src/linked-list/__tests__/while-linked-list.test.ts +0 -58
  82. package/src/linked-list/apply-diff-linked-list.ts +0 -35
  83. package/src/linked-list/create-linked-list.ts +0 -79
  84. package/src/linked-list/find-linked-list.ts +0 -26
  85. package/src/linked-list/get-linked-list.ts +0 -9
  86. package/src/linked-list/index.ts +0 -2
  87. package/src/linked-list/insert-linked-list.ts +0 -50
  88. package/src/linked-list/linked-list-utils.ts +0 -143
  89. package/src/linked-list/reduce-linked-list.ts +0 -18
  90. package/src/linked-list/remove-linked-list.ts +0 -36
  91. package/src/linked-list/type.ts +0 -38
  92. package/src/linked-list/update-linked-list.ts +0 -30
  93. package/src/linked-list/while-linked-list.ts +0 -33
  94. package/src/math/__tests__/clamp-number.test.ts +0 -30
  95. package/src/math/__tests__/interpolate.test.ts +0 -28
  96. package/src/math/__tests__/median.test.ts +0 -27
  97. package/src/math/__tests__/number-range.test.ts +0 -59
  98. package/src/math/__tests__/random-number.test.ts +0 -11
  99. package/src/math/clamp-number.ts +0 -8
  100. package/src/math/index.ts +0 -5
  101. package/src/math/interpolate.ts +0 -18
  102. package/src/math/median.ts +0 -21
  103. package/src/math/number-range.ts +0 -16
  104. package/src/math/random-number.ts +0 -10
  105. package/src/object/__tests__/merge-deep.test.ts +0 -56
  106. package/src/object/__tests__/strip-properties-from-object.test.ts +0 -65
  107. package/src/object/index.ts +0 -2
  108. package/src/object/merge-deep.ts +0 -26
  109. package/src/object/strip-properties-from-object.ts +0 -26
  110. package/src/parsing/__tests__/parse-boolean.test.ts +0 -15
  111. package/src/parsing/__tests__/parse-enum.test.ts +0 -19
  112. package/src/parsing/__tests__/parse-number.test.ts +0 -20
  113. package/src/parsing/index.ts +0 -3
  114. package/src/parsing/parse-boolean.ts +0 -10
  115. package/src/parsing/parse-enum.ts +0 -16
  116. package/src/parsing/parse-number.ts +0 -12
  117. package/src/predicates/__tests__/is-function.test.ts +0 -11
  118. package/src/predicates/__tests__/is-null.test.ts +0 -11
  119. package/src/predicates/__tests__/is-object.test.ts +0 -11
  120. package/src/predicates/__tests__/is-primitive.test.ts +0 -42
  121. package/src/predicates/__tests__/is-undefined.test.ts +0 -11
  122. package/src/predicates/__tests__/is-uuid.test.ts +0 -13
  123. package/src/predicates/index.ts +0 -5
  124. package/src/predicates/is-function.ts +0 -3
  125. package/src/predicates/is-null.ts +0 -1
  126. package/src/predicates/is-object.ts +0 -3
  127. package/src/predicates/is-primitive.ts +0 -19
  128. package/src/predicates/is-undefined.ts +0 -3
  129. package/src/predicates/is-uuid.ts +0 -3
  130. package/src/promise/__tests__/delay.test.ts +0 -13
  131. package/src/promise/__tests__/execute-or-resolve-default.test.ts +0 -25
  132. package/src/promise/__tests__/execute-with-delay.test.ts +0 -24
  133. package/src/promise/delay.ts +0 -3
  134. package/src/promise/execute-or-resolve-default.ts +0 -14
  135. package/src/promise/execute-with-delay.ts +0 -6
  136. package/src/promise/index.ts +0 -3
  137. package/src/string/__tests__/is-string-length-within-range.test.ts +0 -23
  138. package/src/string/__tests__/replace-in-template.test.ts +0 -52
  139. package/src/string/index.ts +0 -2
  140. package/src/string/is-string-length-within-range.ts +0 -10
  141. package/src/string/replace-in-template.ts +0 -45
  142. package/src/time/__tests__/convert.test.ts +0 -14
  143. package/src/time/__tests__/format-minutes.test.ts +0 -10
  144. package/src/time/__tests__/get-time-diff-as-string.test.ts +0 -128
  145. package/src/time/constants.ts +0 -4
  146. package/src/time/convert.ts +0 -5
  147. package/src/time/format-minutes.ts +0 -9
  148. package/src/time/get-time-diff-as-string.ts +0 -196
  149. package/src/time/index.ts +0 -4
  150. package/src/types/function.ts +0 -1
  151. package/src/types/general.ts +0 -15
  152. package/src/types/index.ts +0 -4
  153. package/src/types/object.ts +0 -33
  154. package/src/types/search.ts +0 -29
  155. package/tsconfig.json +0 -25
  156. package/yarn-error.log +0 -4133
  157. package/yarn.lock +0 -4045
  158. /package/{dist/_virtual → _virtual}/_tslib.js +0 -0
  159. /package/{dist/_virtual → _virtual}/_tslib.js.map +0 -0
  160. /package/{dist/array → array}/array-to-map.d.ts +0 -0
  161. /package/{dist/array → array}/array-to-map.js +0 -0
  162. /package/{dist/array → array}/array-to-map.js.map +0 -0
  163. /package/{dist/array → array}/get-values-from-keys.d.ts +0 -0
  164. /package/{dist/array → array}/get-values-from-keys.js +0 -0
  165. /package/{dist/array → array}/get-values-from-keys.js.map +0 -0
  166. /package/{dist/array → array}/index.d.ts +0 -0
  167. /package/{dist/array → array}/index.js +0 -0
  168. /package/{dist/array → array}/index.js.map +0 -0
  169. /package/{dist/array → array}/inner-join.d.ts +0 -0
  170. /package/{dist/array → array}/inner-join.js +0 -0
  171. /package/{dist/array → array}/inner-join.js.map +0 -0
  172. /package/{dist/array → array}/left-outter-join.d.ts +0 -0
  173. /package/{dist/array → array}/left-outter-join.js +0 -0
  174. /package/{dist/array → array}/left-outter-join.js.map +0 -0
  175. /package/{dist/business → business}/picture-spot/index.js +0 -0
  176. /package/{dist/business → business}/picture-spot/index.js.map +0 -0
  177. /package/{dist/business → business}/types/content.js +0 -0
  178. /package/{dist/business → business}/types/index.js +0 -0
  179. /package/{dist/business → business}/types/index.js.map +0 -0
  180. /package/{dist/business → business}/types/media.d.ts +0 -0
  181. /package/{dist/business → business}/types/multilingual.d.ts +0 -0
  182. /package/{dist/business → business}/types/multilingual.js +0 -0
  183. /package/{dist/business → business}/types/multilingual.js.map +0 -0
  184. /package/{dist/business → business}/types/thematic.d.ts +0 -0
  185. /package/{dist/cdn → cdn}/cdn.factory.d.ts +0 -0
  186. /package/{dist/cdn → cdn}/cdn.factory.js +0 -0
  187. /package/{dist/cdn → cdn}/cdn.factory.js.map +0 -0
  188. /package/{dist/cdn → cdn}/index.d.ts +0 -0
  189. /package/{dist/cdn → cdn}/index.js +0 -0
  190. /package/{dist/cdn → cdn}/index.js.map +0 -0
  191. /package/{dist/cdn → cdn}/types/cdn-factory.type.d.ts +0 -0
  192. /package/{dist/cdn → cdn}/types/index.d.ts +0 -0
  193. /package/{dist/cdn → cdn}/types/index.js +0 -0
  194. /package/{dist/cdn → cdn}/types/index.js.map +0 -0
  195. /package/{dist/cdn → cdn}/utils/extract-info-from-url.util.d.ts +0 -0
  196. /package/{dist/cdn → cdn}/utils/extract-info-from-url.util.js +0 -0
  197. /package/{dist/cdn → cdn}/utils/extract-info-from-url.util.js.map +0 -0
  198. /package/{dist/cdn → cdn}/utils/get-cdn-from-s3-url.util.d.ts +0 -0
  199. /package/{dist/cdn → cdn}/utils/get-cdn-from-s3-url.util.js +0 -0
  200. /package/{dist/cdn → cdn}/utils/get-cdn-from-s3-url.util.js.map +0 -0
  201. /package/{dist/cdn → cdn}/utils/get-cdn-url.util.d.ts +0 -0
  202. /package/{dist/cdn → cdn}/utils/get-cdn-url.util.js +0 -0
  203. /package/{dist/cdn → cdn}/utils/get-cdn-url.util.js.map +0 -0
  204. /package/{dist/cdn → cdn}/utils/twicpics-transformations.util.d.ts +0 -0
  205. /package/{dist/cdn → cdn}/utils/twicpics-transformations.util.js +0 -0
  206. /package/{dist/cdn → cdn}/utils/twicpics-transformations.util.js.map +0 -0
  207. /package/{dist/color → color}/get-contrast-color.d.ts +0 -0
  208. /package/{dist/color → color}/get-contrast-color.js +0 -0
  209. /package/{dist/color → color}/get-contrast-color.js.map +0 -0
  210. /package/{dist/color → color}/index.d.ts +0 -0
  211. /package/{dist/color → color}/index.js +0 -0
  212. /package/{dist/color → color}/index.js.map +0 -0
  213. /package/{dist/formatting → formatting}/format-number.d.ts +0 -0
  214. /package/{dist/formatting → formatting}/format-number.js +0 -0
  215. /package/{dist/formatting → formatting}/format-number.js.map +0 -0
  216. /package/{dist/formatting → formatting}/index.d.ts +0 -0
  217. /package/{dist/formatting → formatting}/index.js +0 -0
  218. /package/{dist/formatting → formatting}/index.js.map +0 -0
  219. /package/{dist/fp → fp}/index.d.ts +0 -0
  220. /package/{dist/fp → fp}/index.js +0 -0
  221. /package/{dist/fp → fp}/index.js.map +0 -0
  222. /package/{dist/fp → fp}/run-while.d.ts +0 -0
  223. /package/{dist/fp → fp}/run-while.js +0 -0
  224. /package/{dist/fp → fp}/run-while.js.map +0 -0
  225. /package/{dist/http → http}/build-search-params.d.ts +0 -0
  226. /package/{dist/http → http}/build-search-params.js +0 -0
  227. /package/{dist/http → http}/build-search-params.js.map +0 -0
  228. /package/{dist/http → http}/encode-search-object.d.ts +0 -0
  229. /package/{dist/http → http}/encode-search-object.js +0 -0
  230. /package/{dist/http → http}/encode-search-object.js.map +0 -0
  231. /package/{dist/http → http}/fetch-with-timeout.d.ts +0 -0
  232. /package/{dist/http → http}/fetch-with-timeout.js +0 -0
  233. /package/{dist/http → http}/fetch-with-timeout.js.map +0 -0
  234. /package/{dist/http → http}/index.d.ts +0 -0
  235. /package/{dist/http → http}/index.js +0 -0
  236. /package/{dist/http → http}/index.js.map +0 -0
  237. /package/{dist/index.d.ts → index.d.ts} +0 -0
  238. /package/{dist/index.js → index.js} +0 -0
  239. /package/{dist/index.js.map → index.js.map} +0 -0
  240. /package/{dist/linked-list → linked-list}/apply-diff-linked-list.d.ts +0 -0
  241. /package/{dist/linked-list → linked-list}/apply-diff-linked-list.js +0 -0
  242. /package/{dist/linked-list → linked-list}/apply-diff-linked-list.js.map +0 -0
  243. /package/{dist/linked-list → linked-list}/create-linked-list.d.ts +0 -0
  244. /package/{dist/linked-list → linked-list}/create-linked-list.js +0 -0
  245. /package/{dist/linked-list → linked-list}/create-linked-list.js.map +0 -0
  246. /package/{dist/linked-list → linked-list}/find-linked-list.d.ts +0 -0
  247. /package/{dist/linked-list → linked-list}/find-linked-list.js +0 -0
  248. /package/{dist/linked-list → linked-list}/find-linked-list.js.map +0 -0
  249. /package/{dist/linked-list → linked-list}/get-linked-list.d.ts +0 -0
  250. /package/{dist/linked-list → linked-list}/get-linked-list.js +0 -0
  251. /package/{dist/linked-list → linked-list}/get-linked-list.js.map +0 -0
  252. /package/{dist/linked-list → linked-list}/index.d.ts +0 -0
  253. /package/{dist/linked-list → linked-list}/index.js +0 -0
  254. /package/{dist/linked-list → linked-list}/index.js.map +0 -0
  255. /package/{dist/linked-list → linked-list}/insert-linked-list.d.ts +0 -0
  256. /package/{dist/linked-list → linked-list}/insert-linked-list.js +0 -0
  257. /package/{dist/linked-list → linked-list}/insert-linked-list.js.map +0 -0
  258. /package/{dist/linked-list → linked-list}/linked-list-utils.d.ts +0 -0
  259. /package/{dist/linked-list → linked-list}/linked-list-utils.js +0 -0
  260. /package/{dist/linked-list → linked-list}/linked-list-utils.js.map +0 -0
  261. /package/{dist/linked-list → linked-list}/reduce-linked-list.d.ts +0 -0
  262. /package/{dist/linked-list → linked-list}/reduce-linked-list.js +0 -0
  263. /package/{dist/linked-list → linked-list}/reduce-linked-list.js.map +0 -0
  264. /package/{dist/linked-list → linked-list}/remove-linked-list.d.ts +0 -0
  265. /package/{dist/linked-list → linked-list}/remove-linked-list.js +0 -0
  266. /package/{dist/linked-list → linked-list}/remove-linked-list.js.map +0 -0
  267. /package/{dist/linked-list → linked-list}/type.d.ts +0 -0
  268. /package/{dist/linked-list → linked-list}/update-linked-list.d.ts +0 -0
  269. /package/{dist/linked-list → linked-list}/update-linked-list.js +0 -0
  270. /package/{dist/linked-list → linked-list}/update-linked-list.js.map +0 -0
  271. /package/{dist/linked-list → linked-list}/while-linked-list.d.ts +0 -0
  272. /package/{dist/linked-list → linked-list}/while-linked-list.js +0 -0
  273. /package/{dist/linked-list → linked-list}/while-linked-list.js.map +0 -0
  274. /package/{dist/math → math}/clamp-number.d.ts +0 -0
  275. /package/{dist/math → math}/clamp-number.js +0 -0
  276. /package/{dist/math → math}/clamp-number.js.map +0 -0
  277. /package/{dist/math → math}/index.d.ts +0 -0
  278. /package/{dist/math → math}/index.js +0 -0
  279. /package/{dist/math → math}/index.js.map +0 -0
  280. /package/{dist/math → math}/interpolate.d.ts +0 -0
  281. /package/{dist/math → math}/interpolate.js +0 -0
  282. /package/{dist/math → math}/interpolate.js.map +0 -0
  283. /package/{dist/math → math}/median.d.ts +0 -0
  284. /package/{dist/math → math}/median.js +0 -0
  285. /package/{dist/math → math}/median.js.map +0 -0
  286. /package/{dist/math → math}/number-range.d.ts +0 -0
  287. /package/{dist/math → math}/number-range.js +0 -0
  288. /package/{dist/math → math}/number-range.js.map +0 -0
  289. /package/{dist/math → math}/random-number.d.ts +0 -0
  290. /package/{dist/math → math}/random-number.js +0 -0
  291. /package/{dist/math → math}/random-number.js.map +0 -0
  292. /package/{dist/object → object}/index.d.ts +0 -0
  293. /package/{dist/object → object}/index.js +0 -0
  294. /package/{dist/object → object}/index.js.map +0 -0
  295. /package/{dist/object → object}/merge-deep.d.ts +0 -0
  296. /package/{dist/object → object}/merge-deep.js +0 -0
  297. /package/{dist/object → object}/merge-deep.js.map +0 -0
  298. /package/{dist/object → object}/strip-properties-from-object.d.ts +0 -0
  299. /package/{dist/object → object}/strip-properties-from-object.js +0 -0
  300. /package/{dist/object → object}/strip-properties-from-object.js.map +0 -0
  301. /package/{dist/parsing → parsing}/index.d.ts +0 -0
  302. /package/{dist/parsing → parsing}/index.js +0 -0
  303. /package/{dist/parsing → parsing}/index.js.map +0 -0
  304. /package/{dist/parsing → parsing}/parse-boolean.d.ts +0 -0
  305. /package/{dist/parsing → parsing}/parse-boolean.js +0 -0
  306. /package/{dist/parsing → parsing}/parse-boolean.js.map +0 -0
  307. /package/{dist/parsing → parsing}/parse-enum.d.ts +0 -0
  308. /package/{dist/parsing → parsing}/parse-enum.js +0 -0
  309. /package/{dist/parsing → parsing}/parse-enum.js.map +0 -0
  310. /package/{dist/parsing → parsing}/parse-number.d.ts +0 -0
  311. /package/{dist/parsing → parsing}/parse-number.js +0 -0
  312. /package/{dist/parsing → parsing}/parse-number.js.map +0 -0
  313. /package/{dist/predicates → predicates}/index.d.ts +0 -0
  314. /package/{dist/predicates → predicates}/index.js +0 -0
  315. /package/{dist/predicates → predicates}/index.js.map +0 -0
  316. /package/{dist/predicates → predicates}/is-function.d.ts +0 -0
  317. /package/{dist/predicates → predicates}/is-function.js +0 -0
  318. /package/{dist/predicates → predicates}/is-function.js.map +0 -0
  319. /package/{dist/predicates → predicates}/is-null.d.ts +0 -0
  320. /package/{dist/predicates → predicates}/is-null.js +0 -0
  321. /package/{dist/predicates → predicates}/is-null.js.map +0 -0
  322. /package/{dist/predicates → predicates}/is-object.d.ts +0 -0
  323. /package/{dist/predicates → predicates}/is-object.js +0 -0
  324. /package/{dist/predicates → predicates}/is-object.js.map +0 -0
  325. /package/{dist/predicates → predicates}/is-primitive.d.ts +0 -0
  326. /package/{dist/predicates → predicates}/is-primitive.js +0 -0
  327. /package/{dist/predicates → predicates}/is-primitive.js.map +0 -0
  328. /package/{dist/predicates → predicates}/is-undefined.d.ts +0 -0
  329. /package/{dist/predicates → predicates}/is-undefined.js +0 -0
  330. /package/{dist/predicates → predicates}/is-undefined.js.map +0 -0
  331. /package/{dist/predicates → predicates}/is-uuid.d.ts +0 -0
  332. /package/{dist/promise → promise}/delay.d.ts +0 -0
  333. /package/{dist/promise → promise}/delay.js +0 -0
  334. /package/{dist/promise → promise}/delay.js.map +0 -0
  335. /package/{dist/promise → promise}/execute-or-resolve-default.d.ts +0 -0
  336. /package/{dist/promise → promise}/execute-or-resolve-default.js +0 -0
  337. /package/{dist/promise → promise}/execute-or-resolve-default.js.map +0 -0
  338. /package/{dist/promise → promise}/execute-with-delay.d.ts +0 -0
  339. /package/{dist/promise → promise}/execute-with-delay.js +0 -0
  340. /package/{dist/promise → promise}/execute-with-delay.js.map +0 -0
  341. /package/{dist/promise → promise}/index.d.ts +0 -0
  342. /package/{dist/promise → promise}/index.js +0 -0
  343. /package/{dist/promise → promise}/index.js.map +0 -0
  344. /package/{dist/string → string}/index.d.ts +0 -0
  345. /package/{dist/string → string}/index.js +0 -0
  346. /package/{dist/string → string}/index.js.map +0 -0
  347. /package/{dist/string → string}/is-string-length-within-range.d.ts +0 -0
  348. /package/{dist/string → string}/is-string-length-within-range.js +0 -0
  349. /package/{dist/string → string}/is-string-length-within-range.js.map +0 -0
  350. /package/{dist/string → string}/replace-in-template.d.ts +0 -0
  351. /package/{dist/string → string}/replace-in-template.js +0 -0
  352. /package/{dist/string → string}/replace-in-template.js.map +0 -0
  353. /package/{dist/time → time}/constants.d.ts +0 -0
  354. /package/{dist/time → time}/constants.js +0 -0
  355. /package/{dist/time → time}/constants.js.map +0 -0
  356. /package/{dist/time → time}/convert.d.ts +0 -0
  357. /package/{dist/time → time}/convert.js +0 -0
  358. /package/{dist/time → time}/convert.js.map +0 -0
  359. /package/{dist/time → time}/format-minutes.d.ts +0 -0
  360. /package/{dist/time → time}/format-minutes.js +0 -0
  361. /package/{dist/time → time}/format-minutes.js.map +0 -0
  362. /package/{dist/time → time}/get-time-diff-as-string.d.ts +0 -0
  363. /package/{dist/time → time}/get-time-diff-as-string.js +0 -0
  364. /package/{dist/time → time}/get-time-diff-as-string.js.map +0 -0
  365. /package/{dist/time → time}/index.d.ts +0 -0
  366. /package/{dist/time → time}/index.js +0 -0
  367. /package/{dist/time → time}/index.js.map +0 -0
  368. /package/{dist/types → types}/function.d.ts +0 -0
  369. /package/{dist/types → types}/general.d.ts +0 -0
  370. /package/{dist/types → types}/index.d.ts +0 -0
  371. /package/{dist/types → types}/index.js +0 -0
  372. /package/{dist/types → types}/index.js.map +0 -0
  373. /package/{dist/types → types}/object.d.ts +0 -0
  374. /package/{dist/types → types}/search.d.ts +0 -0
@@ -1,150 +0,0 @@
1
- import {
2
- createCdn,
3
- imgixTransformationQueries,
4
- twicpicsTransformationQueries,
5
- } from '../cdn.factory';
6
- import type { InstanceMapper } from '../types';
7
- import { getCdnFromS3UrlFactory } from '../utils/get-cdn-from-s3-url.util';
8
- import { getCdnUrlFactory } from '../utils/get-cdn-url.util';
9
-
10
- describe('TransformationQueries', () => {
11
- it('Imgix - should handle imgix transformation', () => {
12
- expect(
13
- imgixTransformationQueries({
14
- fit: 'crop',
15
- width: 1,
16
- height: 1,
17
- }),
18
- ).toBe('auto=compress%2Cformat&fit=crop&h=1&w=1');
19
-
20
- expect(imgixTransformationQueries({ fit: 'crop', width: 1 })).toBe(
21
- 'auto=compress%2Cformat&fit=crop&w=1',
22
- );
23
-
24
- expect(imgixTransformationQueries({ fit: 'crop', height: 1 })).toBe(
25
- 'auto=compress%2Cformat&fit=crop&h=1',
26
- );
27
-
28
- expect(imgixTransformationQueries({ width: 1 })).toBe(
29
- 'auto=compress%2Cformat&w=1',
30
- );
31
-
32
- expect(imgixTransformationQueries({ height: 1 })).toBe(
33
- 'auto=compress%2Cformat&h=1',
34
- );
35
-
36
- expect(imgixTransformationQueries({ width: 1, height: 1 })).toBe(
37
- 'auto=compress%2Cformat&h=1&w=1',
38
- );
39
-
40
- expect(imgixTransformationQueries({ devicePixelRatio: 2 })).toBe(
41
- 'auto=compress%2Cformat&dpr=2',
42
- );
43
-
44
- expect(imgixTransformationQueries({ quality: 75 })).toBe(
45
- 'auto=compress%2Cformat&q=75',
46
- );
47
-
48
- expect(imgixTransformationQueries({ quality: 75, compress: false })).toBe(
49
- 'q=75',
50
- );
51
-
52
- expect(imgixTransformationQueries({ compress: false })).toStrictEqual('');
53
- });
54
-
55
- it('should handle twicpics transformation', () => {
56
- const crop = twicpicsTransformationQueries({
57
- fit: 'crop',
58
- width: 1,
59
- height: 1,
60
- });
61
-
62
- expect(crop).toBe('twic=v1/quality=70/crop=1x1');
63
-
64
- const contain = twicpicsTransformationQueries({
65
- fit: 'contain',
66
- width: 1,
67
- height: 1,
68
- });
69
-
70
- expect(contain).toBe('twic=v1/quality=70/contain=1x1');
71
-
72
- const coverOnlyWidth = twicpicsTransformationQueries({ width: 1 });
73
-
74
- expect(coverOnlyWidth).toBe('twic=v1/quality=70/cover=1x-');
75
-
76
- const coverOnlyHeight = twicpicsTransformationQueries({ height: 1 });
77
-
78
- expect(coverOnlyHeight).toBe('twic=v1/quality=70/cover=-x1');
79
-
80
- const noSize = twicpicsTransformationQueries({
81
- fit: 'contain',
82
- });
83
-
84
- expect(noSize).toBe('twic=v1/quality=70');
85
-
86
- const quality = twicpicsTransformationQueries({
87
- quality: 75,
88
- });
89
-
90
- expect(quality).toBe('twic=v1/quality=75');
91
-
92
- const devicePixelRatio = twicpicsTransformationQueries({
93
- height: 100,
94
- width: 45,
95
- devicePixelRatio: 2,
96
- });
97
-
98
- expect(devicePixelRatio).toBe('twic=v1/quality=70/cover=90x200');
99
- });
100
- });
101
-
102
- describe('cdnFactory', () => {
103
- it('Imgix - should instanciate the right cdn', () => {
104
- const domain = 'https://sparted.imgix.fr';
105
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
106
- const getCdnUrl = getCdnUrlFactory({
107
- domain,
108
- instanceMapper,
109
- transformationQueries: imgixTransformationQueries,
110
- });
111
-
112
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
113
- getCdnUrl,
114
- });
115
-
116
- const cdn = createCdn({
117
- type: 'imgix',
118
- domain: 'https://sparted.imgix.fr/',
119
- instanceMapper,
120
- });
121
-
122
- expect(cdn.getCdnUrl.toString()).toBe(getCdnUrl.toString());
123
-
124
- expect(cdn.getCdnFromS3Url.toString()).toBe(getCdnFromS3Url.toString());
125
- });
126
-
127
- it('Twicpics - should instanciate the right cdn', () => {
128
- const domain = 'https://sparted.twicpics.fr';
129
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
130
- const getCdnUrl = getCdnUrlFactory({
131
- domain,
132
- instanceMapper,
133
- transformationQueries: twicpicsTransformationQueries,
134
- });
135
-
136
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
137
- getCdnUrl,
138
- });
139
-
140
- const cdn = createCdn({
141
- type: 'twicpics',
142
- domain: 'https://sparted.twicpics.fr/',
143
- instanceMapper: (instanceId) => instanceId,
144
- });
145
-
146
- expect(cdn.getCdnUrl.toString()).toBe(getCdnUrl.toString());
147
-
148
- expect(cdn.getCdnFromS3Url.toString()).toBe(getCdnFromS3Url.toString());
149
- });
150
- });
@@ -1,528 +0,0 @@
1
- import {
2
- imgixTransformationQueries,
3
- twicpicsTransformationQueries,
4
- } from '../cdn.factory';
5
- import { extractInfoFromUrl } from '../utils/extract-info-from-url.util';
6
- import { genCacheVersionQuery, getCdnUrlFactory } from '../utils/get-cdn-url.util';
7
- import { getCdnFromS3UrlFactory } from '../utils/get-cdn-from-s3-url.util';
8
- import type { InstanceMapper } from '../types';
9
-
10
- describe('extract-info-from-url', () => {
11
- it('should handle non-aws s3 url', () => {
12
- const info = extractInfoFromUrl('https://www.google.com');
13
-
14
- expect(info).toBeUndefined();
15
- });
16
-
17
- it('should handle all aws s3 url', () => {
18
- const { instanceId: instanceIdEW1, path: pathEW1 } = extractInfoFromUrl(
19
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
20
- ) ?? {};
21
-
22
- expect(instanceIdEW1).toBe('check');
23
- expect(pathEW1).toBe('/path/to/something');
24
-
25
- const { instanceId: instanceIdAmazonaws, path: pathAmazonaws } = extractInfoFromUrl(
26
- 'https://sparted-prod-check.s3.amazonaws.com/path/to/something',
27
- ) ?? {};
28
-
29
- expect(instanceIdAmazonaws).toBe('check');
30
- expect(pathAmazonaws).toBe('/path/to/something');
31
-
32
- const { instanceId: instanceIdCloud, path: pathCloud } = extractInfoFromUrl(
33
- 'https://sparted-prod-check.s3.fr-par.scw.cloud/path/to/something',
34
- ) ?? {};
35
-
36
- expect(instanceIdCloud).toBe('check');
37
- expect(pathCloud).toBe('/path/to/something');
38
- });
39
-
40
- it('should handle any param and not crash', () => {
41
- // @ts-ignore - Passing wrong param to fn in test
42
- expect(extractInfoFromUrl()).toBeUndefined();
43
- // @ts-ignore - Passing wrong param to fn in test
44
- expect(extractInfoFromUrl([])).toBeUndefined();
45
- // @ts-ignore - Passing wrong param to fn in test
46
- expect(extractInfoFromUrl({})).toBeUndefined();
47
- expect(extractInfoFromUrl('')).toBeUndefined();
48
- });
49
- });
50
-
51
- describe('getCdnUrlFactory', () => {
52
- it('Imgix - should generate url without params', () => {
53
- const domain = 'https://sparted.imgix.fr';
54
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
55
- const getCdnUrl = getCdnUrlFactory({
56
- domain,
57
- instanceMapper,
58
- transformationQueries: imgixTransformationQueries,
59
- });
60
-
61
- expect(getCdnUrl('test', '/path/to/something')).toBe(
62
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat',
63
- );
64
- });
65
-
66
- it('Twicpics - should generate url without params', () => {
67
- const domain = 'https://sparted.twicpics.fr';
68
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
69
- const getCdnUrl = getCdnUrlFactory({
70
- domain,
71
- instanceMapper,
72
- transformationQueries: twicpicsTransformationQueries,
73
- });
74
-
75
- expect(getCdnUrl('test', '/path/to/something')).toBe(
76
- 'https://sparted.twicpics.fr/prod/test/path/to/something?twic=v1/quality=70',
77
- );
78
- });
79
-
80
- it('Imgix - should generate url with cache param', () => {
81
- const domain = 'https://sparted.imgix.fr';
82
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
83
- const getCdnUrl = getCdnUrlFactory({
84
- domain,
85
- instanceMapper,
86
- transformationQueries: imgixTransformationQueries,
87
- cacheVersion: 3,
88
- });
89
-
90
- expect(getCdnUrl('test', '/path/to/something')).toBe(
91
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&v=3',
92
- );
93
- });
94
-
95
- it('Twicpics - should generate url with cache param', () => {
96
- const domain = 'https://sparted.twicpics.fr';
97
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
98
- const getCdnUrl = getCdnUrlFactory({
99
- domain,
100
- instanceMapper,
101
- transformationQueries: twicpicsTransformationQueries,
102
- cacheVersion: 3,
103
- });
104
-
105
- expect(getCdnUrl('test', '/path/to/something')).toBe(
106
- 'https://sparted.twicpics.fr/prod/test/path/to/something?twic=v1/quality=70&v=3',
107
- );
108
- });
109
-
110
- it('Imgix - should generate url of image as thumbnail', () => {
111
- const domain = 'https://sparted.imgix.fr';
112
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
113
- const getCdnUrl = getCdnUrlFactory({
114
- domain,
115
- instanceMapper,
116
- transformationQueries: imgixTransformationQueries,
117
- });
118
-
119
- expect(getCdnUrl('test', '/path/to/something', { asThumbnail: true })).toBe(
120
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&h=300&w=300',
121
- );
122
- });
123
-
124
- it('Twicpics - should generate url of image as thumbnail', () => {
125
- const domain = 'https://sparted.twicpics.fr';
126
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
127
- const getCdnUrl = getCdnUrlFactory({
128
- domain,
129
- instanceMapper,
130
- transformationQueries: twicpicsTransformationQueries,
131
- });
132
-
133
- expect(getCdnUrl('test', '/path/to/something', { asThumbnail: true })).toBe(
134
- 'https://sparted.twicpics.fr/prod/test/path/to/something?twic=v1/quality=70/cover=300x300',
135
- );
136
- });
137
-
138
- it('Imgix - should generate url with params', () => {
139
- const domain = 'https://sparted.imgix.fr';
140
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
141
- const getCdnUrl = getCdnUrlFactory({
142
- domain,
143
- instanceMapper,
144
- transformationQueries: imgixTransformationQueries,
145
- });
146
-
147
- expect(
148
- getCdnUrl('test', '/path/to/something', {
149
- transformation: { fit: 'crop', height: 1, width: 1 },
150
- }),
151
- ).toBe(
152
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&fit=crop&h=1&w=1',
153
- );
154
-
155
- expect(
156
- getCdnUrl('test', '/path/to/something', {
157
- transformation: { fit: 'crop', width: 1 },
158
- }),
159
- ).toBe(
160
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&fit=crop&w=1',
161
- );
162
-
163
- expect(
164
- getCdnUrl('test', '/path/to/something', {
165
- transformation: { fit: 'crop', height: 1 },
166
- }),
167
- ).toBe(
168
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&fit=crop&h=1',
169
- );
170
-
171
- expect(
172
- getCdnUrl('test', '/path/to/something', { transformation: { width: 1 } }),
173
- ).toBe(
174
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&w=1',
175
- );
176
-
177
- expect(
178
- getCdnUrl('test', '/path/to/something', { transformation: { height: 1 } }),
179
- ).toBe(
180
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&h=1',
181
- );
182
-
183
- expect(
184
- getCdnUrl('test', '/path/to/something', {
185
- transformation: { height: 1, width: 1 },
186
- }),
187
- ).toBe(
188
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&h=1&w=1',
189
- );
190
-
191
- expect(
192
- getCdnUrl('test', '/path/to/something', {
193
- transformation: { devicePixelRatio: 2 },
194
- }),
195
- ).toBe(
196
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&dpr=2',
197
- );
198
-
199
- expect(
200
- getCdnUrl('test', '/path/to/something', {
201
- transformation: { quality: 75 },
202
- }),
203
- ).toBe(
204
- 'https://sparted.imgix.fr/prod/test/path/to/something?auto=compress%2Cformat&q=75',
205
- );
206
- });
207
-
208
- it('Twicpics - should generate url of image as thumbnail', () => {
209
- const domain = 'https://sparted.twicpics.fr';
210
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
211
- const getCdnUrl = getCdnUrlFactory({
212
- domain,
213
- instanceMapper,
214
- transformationQueries: twicpicsTransformationQueries,
215
- });
216
-
217
- expect(
218
- getCdnUrl('test', '/path/to/something', {
219
- transformation: { fit: 'crop', height: 1, width: 1 },
220
- }),
221
- ).toBe(
222
- 'https://sparted.twicpics.fr/prod/test/path/to/something?twic=v1/quality=70/crop=1x1',
223
- );
224
-
225
- expect(
226
- getCdnUrl('test', '/path/to/something', {
227
- transformation: { fit: 'contain', height: 1, width: 1 },
228
- }),
229
- ).toBe(
230
- 'https://sparted.twicpics.fr/prod/test/path/to/something?twic=v1/quality=70/contain=1x1',
231
- );
232
-
233
- expect(
234
- getCdnUrl('test', '/path/to/something', { transformation: { width: 1 } }),
235
- ).toBe(
236
- 'https://sparted.twicpics.fr/prod/test/path/to/something?twic=v1/quality=70/cover=1x-',
237
- );
238
- });
239
- });
240
-
241
- describe('getCdnFromS3UrlFactory', () => {
242
- it('Imgix - should handle non-aws s3 url', () => {
243
- const domain = 'https://sparted.imgix.fr';
244
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
245
- const getCdnUrl = getCdnUrlFactory({
246
- domain,
247
- instanceMapper,
248
- transformationQueries: imgixTransformationQueries,
249
- });
250
-
251
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
252
- getCdnUrl,
253
- });
254
-
255
- expect(getCdnFromS3Url('https://www.google.com')).toBe(
256
- 'https://www.google.com',
257
- );
258
- });
259
-
260
- it('Twicpics - should handle non-aws s3 url', () => {
261
- const domain = 'https://sparted.twicpics.fr';
262
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
263
- const getCdnUrl = getCdnUrlFactory({
264
- domain,
265
- instanceMapper,
266
- transformationQueries: twicpicsTransformationQueries,
267
- });
268
-
269
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
270
- getCdnUrl,
271
- });
272
-
273
- expect(getCdnFromS3Url('https://www.google.com')).toBe(
274
- 'https://www.google.com',
275
- );
276
- });
277
-
278
- it('Imgix - should handle all aws s3 url with no params', () => {
279
- const domain = 'https://sparted.imgix.fr';
280
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
281
- const getCdnUrl = getCdnUrlFactory({
282
- domain,
283
- instanceMapper,
284
- transformationQueries: imgixTransformationQueries,
285
- });
286
-
287
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
288
- getCdnUrl,
289
- });
290
-
291
- expect(
292
- getCdnFromS3Url(
293
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
294
- ),
295
- ).toBe(
296
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat',
297
- );
298
-
299
- expect(
300
- getCdnFromS3Url(
301
- 'https://sparted-prod-check.s3.amazonaws.com/path/to/something',
302
- ),
303
- ).toBe(
304
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat',
305
- );
306
-
307
- expect(
308
- getCdnFromS3Url(
309
- 'https://sparted-prod-check.s3.fr-par.scw.cloud/path/to/something',
310
- ),
311
- ).toBe(
312
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat',
313
- );
314
- });
315
-
316
- it('Twicpics - should handle all aws s3 url with no params', () => {
317
- const domain = 'https://sparted.twicpics.fr';
318
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
319
- const getCdnUrl = getCdnUrlFactory({
320
- domain,
321
- instanceMapper,
322
- transformationQueries: twicpicsTransformationQueries,
323
- });
324
-
325
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
326
- getCdnUrl,
327
- });
328
-
329
- expect(
330
- getCdnFromS3Url(
331
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
332
- ),
333
- ).toBe('https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70');
334
-
335
- expect(
336
- getCdnFromS3Url(
337
- 'https://sparted-prod-check.s3.amazonaws.com/path/to/something',
338
- ),
339
- ).toBe('https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70');
340
-
341
- expect(
342
- getCdnFromS3Url(
343
- 'https://sparted-prod-check.s3.fr-par.scw.cloud/path/to/something',
344
- ),
345
- ).toBe('https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70');
346
- });
347
-
348
- it('Imgix - should handle params', () => {
349
- const domain = 'https://sparted.imgix.fr';
350
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
351
- const getCdnUrl = getCdnUrlFactory({
352
- domain,
353
- instanceMapper,
354
- transformationQueries: imgixTransformationQueries,
355
- });
356
-
357
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
358
- getCdnUrl,
359
- });
360
-
361
- expect(
362
- getCdnFromS3Url(
363
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
364
- {
365
- transformation: { fit: 'crop', height: 1, width: 1 },
366
- },
367
- ),
368
- ).toBe(
369
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&fit=crop&h=1&w=1',
370
- );
371
-
372
- expect(
373
- getCdnFromS3Url(
374
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
375
- {
376
- transformation: { fit: 'crop', width: 1 },
377
- },
378
- ),
379
- ).toBe(
380
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&fit=crop&w=1',
381
- );
382
-
383
- expect(
384
- getCdnFromS3Url(
385
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
386
- {
387
- transformation: { fit: 'crop', height: 1 },
388
- },
389
- ),
390
- ).toBe(
391
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&fit=crop&h=1',
392
- );
393
-
394
- expect(
395
- getCdnFromS3Url(
396
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
397
- {
398
- transformation: { width: 1 },
399
- },
400
- ),
401
- ).toBe(
402
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&w=1',
403
- );
404
-
405
- expect(
406
- getCdnFromS3Url(
407
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
408
- {
409
- transformation: { height: 1 },
410
- },
411
- ),
412
- ).toBe(
413
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&h=1',
414
- );
415
-
416
- expect(
417
- getCdnFromS3Url(
418
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
419
- {
420
- transformation: { height: 1, width: 1 },
421
- },
422
- ),
423
- ).toBe(
424
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&h=1&w=1',
425
- );
426
-
427
- expect(
428
- getCdnFromS3Url(
429
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
430
- {
431
- transformation: { devicePixelRatio: 2 },
432
- },
433
- ),
434
- ).toBe(
435
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&dpr=2',
436
- );
437
-
438
- expect(
439
- getCdnFromS3Url(
440
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
441
- {
442
- transformation: { quality: 75 },
443
- },
444
- ),
445
- ).toBe(
446
- 'https://sparted.imgix.fr/prod/check/path/to/something?auto=compress%2Cformat&q=75',
447
- );
448
- });
449
-
450
- it('Twicpics - should handle params', () => {
451
- const domain = 'https://sparted.twicpics.fr';
452
- const instanceMapper: InstanceMapper = (instanceId) => `/prod/${instanceId}`;
453
- const getCdnUrl = getCdnUrlFactory({
454
- domain,
455
- instanceMapper,
456
- transformationQueries: twicpicsTransformationQueries,
457
- });
458
-
459
- const getCdnFromS3Url = getCdnFromS3UrlFactory({
460
- getCdnUrl,
461
- });
462
-
463
- expect(
464
- getCdnFromS3Url(
465
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
466
- {
467
- transformation: { fit: 'crop', height: 1, width: 1 },
468
- },
469
- ),
470
- ).toBe(
471
- 'https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70/crop=1x1',
472
- );
473
-
474
- expect(
475
- getCdnFromS3Url(
476
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
477
- {
478
- transformation: { fit: 'contain', height: 1, width: 1 },
479
- },
480
- ),
481
- ).toBe(
482
- 'https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70/contain=1x1',
483
- );
484
-
485
- expect(
486
- getCdnFromS3Url(
487
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
488
- {
489
- transformation: { width: 1 },
490
- },
491
- ),
492
- ).toBe(
493
- 'https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70/cover=1x-',
494
- );
495
-
496
- expect(
497
- getCdnFromS3Url(
498
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
499
- {
500
- transformation: { width: 1, output: 'webp' },
501
- },
502
- ),
503
- ).toBe(
504
- 'https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70/cover=1x-/output=webp',
505
- );
506
-
507
- expect(
508
- getCdnFromS3Url(
509
- 'https://sparted-prod-check.s3.eu-west-1/path/to/something',
510
- {
511
- transformation: { fit: 'contain', height: 300, width: 200, output: 'png' },
512
- },
513
- ),
514
- ).toBe(
515
- 'https://sparted.twicpics.fr/prod/check/path/to/something?twic=v1/quality=70/contain=200x300/output=png',
516
- );
517
- });
518
- });
519
-
520
- describe('cacheVersionQuery', () => {
521
- it('should return cache version query', () => {
522
- expect(genCacheVersionQuery(2)).toBe('v=2');
523
- });
524
-
525
- it('should return empty string if cache version is not provided', () => {
526
- expect(genCacheVersionQuery()).toBe('');
527
- });
528
- });