umt 2.3.0 → 2.4.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 (362) hide show
  1. package/module/Array/chunk.js +5 -3
  2. package/module/Array/chunk.js.map +1 -1
  3. package/module/Array/dualPivotQuickSort.d.ts +1 -2
  4. package/module/Array/dualPivotQuickSort.js +5 -26
  5. package/module/Array/dualPivotQuickSort.js.map +1 -1
  6. package/module/Array/quickSort.js +7 -25
  7. package/module/Array/quickSort.js.map +1 -1
  8. package/module/Array/sortingHelpers/applyInsertionSortIfNeeded.d.ts +13 -0
  9. package/module/Array/sortingHelpers/applyInsertionSortIfNeeded.js +20 -0
  10. package/module/Array/sortingHelpers/applyInsertionSortIfNeeded.js.map +1 -0
  11. package/module/Array/sortingHelpers/rangeValidator.d.ts +17 -0
  12. package/module/Array/sortingHelpers/rangeValidator.js +26 -0
  13. package/module/Array/sortingHelpers/rangeValidator.js.map +1 -0
  14. package/module/Validate/object/core.d.ts +2 -6
  15. package/module/Validate/object/core.js.map +1 -1
  16. package/module/Validate/type.d.ts +1 -0
  17. package/module/es5/Array/chunk.js +5 -3
  18. package/module/es5/Array/dualPivotQuickSort.d.ts +1 -2
  19. package/module/es5/Array/dualPivotQuickSort.js +8 -28
  20. package/module/es5/Array/quickSort.js +10 -25
  21. package/module/es5/Array/sortingHelpers/applyInsertionSortIfNeeded.d.ts +13 -0
  22. package/module/es5/Array/sortingHelpers/applyInsertionSortIfNeeded.js +25 -0
  23. package/module/es5/Array/sortingHelpers/rangeValidator.d.ts +17 -0
  24. package/module/es5/Array/sortingHelpers/rangeValidator.js +35 -0
  25. package/module/es5/Validate/object/core.d.ts +2 -6
  26. package/module/es5/Validate/type.d.ts +1 -0
  27. package/module/es5/tsconfig.tsbuildinfo +1 -1
  28. package/package.json +21 -17
  29. package/module/es5/tests/integration/Array/drop-and-first.test.d.ts +0 -1
  30. package/module/es5/tests/integration/Array/drop-and-first.test.js +0 -34
  31. package/module/es5/tests/integration/Tool/parseJson-and-Validate.test.d.ts +0 -1
  32. package/module/es5/tests/integration/Tool/parseJson-and-Validate.test.js +0 -80
  33. package/module/es5/tests/unit/Advance/rangeAdvance.test.d.ts +0 -1
  34. package/module/es5/tests/unit/Advance/rangeAdvance.test.js +0 -26
  35. package/module/es5/tests/unit/Array/arraysJoin.test.d.ts +0 -1
  36. package/module/es5/tests/unit/Array/arraysJoin.test.js +0 -19
  37. package/module/es5/tests/unit/Array/binarySearch.test.d.ts +0 -1
  38. package/module/es5/tests/unit/Array/binarySearch.test.js +0 -32
  39. package/module/es5/tests/unit/Array/checkFlagAlignment.test.d.ts +0 -1
  40. package/module/es5/tests/unit/Array/checkFlagAlignment.test.js +0 -206
  41. package/module/es5/tests/unit/Array/chunk.test.d.ts +0 -1
  42. package/module/es5/tests/unit/Array/chunk.test.js +0 -51
  43. package/module/es5/tests/unit/Array/compact.test.d.ts +0 -1
  44. package/module/es5/tests/unit/Array/compact.test.js +0 -53
  45. package/module/es5/tests/unit/Array/compareFunctionDefault.test.d.ts +0 -1
  46. package/module/es5/tests/unit/Array/compareFunctionDefault.test.js +0 -29
  47. package/module/es5/tests/unit/Array/drop.test.d.ts +0 -1
  48. package/module/es5/tests/unit/Array/drop.test.js +0 -84
  49. package/module/es5/tests/unit/Array/dualPivotQuickSort.test.d.ts +0 -1
  50. package/module/es5/tests/unit/Array/dualPivotQuickSort.test.js +0 -87
  51. package/module/es5/tests/unit/Array/first.test.d.ts +0 -1
  52. package/module/es5/tests/unit/Array/first.test.js +0 -28
  53. package/module/es5/tests/unit/Array/generateNumberArray.test.d.ts +0 -1
  54. package/module/es5/tests/unit/Array/generateNumberArray.test.js +0 -34
  55. package/module/es5/tests/unit/Array/getArraysCommon.test.d.ts +0 -1
  56. package/module/es5/tests/unit/Array/getArraysCommon.test.js +0 -40
  57. package/module/es5/tests/unit/Array/getArraysDiff.test.d.ts +0 -1
  58. package/module/es5/tests/unit/Array/getArraysDiff.test.js +0 -99
  59. package/module/es5/tests/unit/Array/groupBy.test.d.ts +0 -1
  60. package/module/es5/tests/unit/Array/groupBy.test.js +0 -87
  61. package/module/es5/tests/unit/Array/insertionSort.test.d.ts +0 -1
  62. package/module/es5/tests/unit/Array/insertionSort.test.js +0 -37
  63. package/module/es5/tests/unit/Array/mergeSort.test.d.ts +0 -1
  64. package/module/es5/tests/unit/Array/mergeSort.test.js +0 -49
  65. package/module/es5/tests/unit/Array/pop.test.d.ts +0 -1
  66. package/module/es5/tests/unit/Array/pop.test.js +0 -50
  67. package/module/es5/tests/unit/Array/quickSort.test.d.ts +0 -1
  68. package/module/es5/tests/unit/Array/quickSort.test.js +0 -118
  69. package/module/es5/tests/unit/Array/randomSelect.test.d.ts +0 -1
  70. package/module/es5/tests/unit/Array/randomSelect.test.js +0 -51
  71. package/module/es5/tests/unit/Array/range.test.d.ts +0 -1
  72. package/module/es5/tests/unit/Array/range.test.js +0 -42
  73. package/module/es5/tests/unit/Array/shuffle.test.d.ts +0 -1
  74. package/module/es5/tests/unit/Array/shuffle.test.js +0 -84
  75. package/module/es5/tests/unit/Array/shuffle2DArray.test.d.ts +0 -1
  76. package/module/es5/tests/unit/Array/shuffle2DArray.test.js +0 -90
  77. package/module/es5/tests/unit/Array/sum.test.d.ts +0 -1
  78. package/module/es5/tests/unit/Array/sum.test.js +0 -44
  79. package/module/es5/tests/unit/Array/timSort.test.d.ts +0 -1
  80. package/module/es5/tests/unit/Array/timSort.test.js +0 -128
  81. package/module/es5/tests/unit/Array/zip.test.d.ts +0 -1
  82. package/module/es5/tests/unit/Array/zip.test.js +0 -69
  83. package/module/es5/tests/unit/Array/zipLongest.test.d.ts +0 -1
  84. package/module/es5/tests/unit/Array/zipLongest.test.js +0 -74
  85. package/module/es5/tests/unit/Color/cmykToRgba.test.d.ts +0 -1
  86. package/module/es5/tests/unit/Color/cmykToRgba.test.js +0 -58
  87. package/module/es5/tests/unit/Color/hexaToRgba.test.d.ts +0 -1
  88. package/module/es5/tests/unit/Color/hexaToRgba.test.js +0 -115
  89. package/module/es5/tests/unit/Color/hslaToRgba.test.d.ts +0 -1
  90. package/module/es5/tests/unit/Color/hslaToRgba.test.js +0 -141
  91. package/module/es5/tests/unit/Color/rgbaToCmyk.test.d.ts +0 -1
  92. package/module/es5/tests/unit/Color/rgbaToCmyk.test.js +0 -139
  93. package/module/es5/tests/unit/Color/rgbaToHexA.test.d.ts +0 -1
  94. package/module/es5/tests/unit/Color/rgbaToHexA.test.js +0 -114
  95. package/module/es5/tests/unit/Color/rgbaToHsla.test.d.ts +0 -1
  96. package/module/es5/tests/unit/Color/rgbaToHsla.test.js +0 -190
  97. package/module/es5/tests/unit/Consts/clock.test.d.ts +0 -1
  98. package/module/es5/tests/unit/Consts/clock.test.js +0 -71
  99. package/module/es5/tests/unit/Consts/httpClientErrorStatus.test.d.ts +0 -1
  100. package/module/es5/tests/unit/Consts/httpClientErrorStatus.test.js +0 -33
  101. package/module/es5/tests/unit/Consts/httpInformationalStatus.test.d.ts +0 -1
  102. package/module/es5/tests/unit/Consts/httpInformationalStatus.test.js +0 -13
  103. package/module/es5/tests/unit/Consts/httpRedirectionStatus.test.d.ts +0 -1
  104. package/module/es5/tests/unit/Consts/httpRedirectionStatus.test.js +0 -16
  105. package/module/es5/tests/unit/Consts/httpServerErrorStatus.test.d.ts +0 -1
  106. package/module/es5/tests/unit/Consts/httpServerErrorStatus.test.js +0 -15
  107. package/module/es5/tests/unit/Consts/httpStatus.test.d.ts +0 -1
  108. package/module/es5/tests/unit/Consts/httpStatus.test.js +0 -82
  109. package/module/es5/tests/unit/Consts/httpSuccessStatus.test.d.ts +0 -1
  110. package/module/es5/tests/unit/Consts/httpSuccessStatus.test.js +0 -16
  111. package/module/es5/tests/unit/Date/birthday.test.d.ts +0 -1
  112. package/module/es5/tests/unit/Date/birthday.test.js +0 -31
  113. package/module/es5/tests/unit/Date/dateRange.test.d.ts +0 -1
  114. package/module/es5/tests/unit/Date/dateRange.test.js +0 -40
  115. package/module/es5/tests/unit/Date/dayOfWeek.test.d.ts +0 -1
  116. package/module/es5/tests/unit/Date/dayOfWeek.test.js +0 -39
  117. package/module/es5/tests/unit/Date/deleteSpace.test.d.ts +0 -1
  118. package/module/es5/tests/unit/Date/deleteSpace.test.js +0 -35
  119. package/module/es5/tests/unit/Date/format.test.d.ts +0 -1
  120. package/module/es5/tests/unit/Date/format.test.js +0 -50
  121. package/module/es5/tests/unit/Date/getDay.test.d.ts +0 -1
  122. package/module/es5/tests/unit/Date/getDay.test.js +0 -40
  123. package/module/es5/tests/unit/Date/getTimezoneOffsetString.test.d.ts +0 -1
  124. package/module/es5/tests/unit/Date/getTimezoneOffsetString.test.js +0 -26
  125. package/module/es5/tests/unit/Date/isLeapYear.test.d.ts +0 -1
  126. package/module/es5/tests/unit/Date/isLeapYear.test.js +0 -30
  127. package/module/es5/tests/unit/Date/new.test.d.ts +0 -1
  128. package/module/es5/tests/unit/Date/new.test.js +0 -39
  129. package/module/es5/tests/unit/Date/now.test.d.ts +0 -1
  130. package/module/es5/tests/unit/Date/now.test.js +0 -42
  131. package/module/es5/tests/unit/Error/safeExecute.test.d.ts +0 -1
  132. package/module/es5/tests/unit/Error/safeExecute.test.js +0 -75
  133. package/module/es5/tests/unit/Function/curry.test.d.ts +0 -1
  134. package/module/es5/tests/unit/Function/curry.test.js +0 -138
  135. package/module/es5/tests/unit/IP/cidrToLong.test.d.ts +0 -1
  136. package/module/es5/tests/unit/IP/cidrToLong.test.js +0 -32
  137. package/module/es5/tests/unit/IP/cidrToSubnetMask.test.d.ts +0 -1
  138. package/module/es5/tests/unit/IP/cidrToSubnetMask.test.js +0 -36
  139. package/module/es5/tests/unit/IP/getIpClass.test.d.ts +0 -1
  140. package/module/es5/tests/unit/IP/getIpClass.test.js +0 -36
  141. package/module/es5/tests/unit/IP/getNetworkAddress.test.d.ts +0 -1
  142. package/module/es5/tests/unit/IP/getNetworkAddress.test.js +0 -40
  143. package/module/es5/tests/unit/IP/ipToBinaryString.test.d.ts +0 -1
  144. package/module/es5/tests/unit/IP/ipToBinaryString.test.js +0 -46
  145. package/module/es5/tests/unit/IP/ipToLong.test.d.ts +0 -1
  146. package/module/es5/tests/unit/IP/ipToLong.test.js +0 -34
  147. package/module/es5/tests/unit/IP/isInRange.test.d.ts +0 -1
  148. package/module/es5/tests/unit/IP/isInRange.test.js +0 -82
  149. package/module/es5/tests/unit/IP/isPrivateIp.test.d.ts +0 -1
  150. package/module/es5/tests/unit/IP/isPrivateIp.test.js +0 -26
  151. package/module/es5/tests/unit/IP/longToIp.test.d.ts +0 -1
  152. package/module/es5/tests/unit/IP/longToIp.test.js +0 -39
  153. package/module/es5/tests/unit/IP/subnetMaskToCidr.test.d.ts +0 -1
  154. package/module/es5/tests/unit/IP/subnetMaskToCidr.test.js +0 -41
  155. package/module/es5/tests/unit/Math/addition.test.d.ts +0 -1
  156. package/module/es5/tests/unit/Math/addition.test.js +0 -79
  157. package/module/es5/tests/unit/Math/average.test.d.ts +0 -1
  158. package/module/es5/tests/unit/Math/average.test.js +0 -48
  159. package/module/es5/tests/unit/Math/bitwise.test.d.ts +0 -1
  160. package/module/es5/tests/unit/Math/bitwise.test.js +0 -62
  161. package/module/es5/tests/unit/Math/calculator/calculator.test.d.ts +0 -1
  162. package/module/es5/tests/unit/Math/calculator/calculator.test.js +0 -76
  163. package/module/es5/tests/unit/Math/calculator/calculatorInitialization.test.d.ts +0 -1
  164. package/module/es5/tests/unit/Math/calculator/calculatorInitialization.test.js +0 -21
  165. package/module/es5/tests/unit/Math/calculator/convertCurrency.test.d.ts +0 -1
  166. package/module/es5/tests/unit/Math/calculator/convertCurrency.test.js +0 -40
  167. package/module/es5/tests/unit/Math/calculator/literalExpression.test.d.ts +0 -1
  168. package/module/es5/tests/unit/Math/calculator/literalExpression.test.js +0 -51
  169. package/module/es5/tests/unit/Math/degToRad.test.d.ts +0 -1
  170. package/module/es5/tests/unit/Math/degToRad.test.js +0 -50
  171. package/module/es5/tests/unit/Math/deviationValue.test.d.ts +0 -1
  172. package/module/es5/tests/unit/Math/deviationValue.test.js +0 -30
  173. package/module/es5/tests/unit/Math/division.test.d.ts +0 -1
  174. package/module/es5/tests/unit/Math/division.test.js +0 -81
  175. package/module/es5/tests/unit/Math/factorial.test.d.ts +0 -1
  176. package/module/es5/tests/unit/Math/factorial.test.js +0 -26
  177. package/module/es5/tests/unit/Math/factorize.test.d.ts +0 -1
  178. package/module/es5/tests/unit/Math/factorize.test.js +0 -38
  179. package/module/es5/tests/unit/Math/flexibleNumberConversion.test.d.ts +0 -1
  180. package/module/es5/tests/unit/Math/flexibleNumberConversion.test.js +0 -195
  181. package/module/es5/tests/unit/Math/gcd.test.d.ts +0 -1
  182. package/module/es5/tests/unit/Math/gcd.test.js +0 -35
  183. package/module/es5/tests/unit/Math/getDecimalLength.test.d.ts +0 -1
  184. package/module/es5/tests/unit/Math/getDecimalLength.test.js +0 -44
  185. package/module/es5/tests/unit/Math/lcm.test.d.ts +0 -1
  186. package/module/es5/tests/unit/Math/lcm.test.js +0 -43
  187. package/module/es5/tests/unit/Math/linearCongruentialGenerator.test.d.ts +0 -1
  188. package/module/es5/tests/unit/Math/linearCongruentialGenerator.test.js +0 -25
  189. package/module/es5/tests/unit/Math/mathConverter.test.d.ts +0 -1
  190. package/module/es5/tests/unit/Math/mathConverter.test.js +0 -37
  191. package/module/es5/tests/unit/Math/mathSeparator.test.d.ts +0 -1
  192. package/module/es5/tests/unit/Math/mathSeparator.test.js +0 -59
  193. package/module/es5/tests/unit/Math/max.test.d.ts +0 -1
  194. package/module/es5/tests/unit/Math/max.test.js +0 -22
  195. package/module/es5/tests/unit/Math/median.test.d.ts +0 -1
  196. package/module/es5/tests/unit/Math/median.test.js +0 -17
  197. package/module/es5/tests/unit/Math/min.test.d.ts +0 -1
  198. package/module/es5/tests/unit/Math/min.test.js +0 -22
  199. package/module/es5/tests/unit/Math/multiples.test.d.ts +0 -1
  200. package/module/es5/tests/unit/Math/multiples.test.js +0 -30
  201. package/module/es5/tests/unit/Math/multiplication.test.d.ts +0 -1
  202. package/module/es5/tests/unit/Math/multiplication.test.js +0 -48
  203. package/module/es5/tests/unit/Math/nCr.test.d.ts +0 -1
  204. package/module/es5/tests/unit/Math/nCr.test.js +0 -34
  205. package/module/es5/tests/unit/Math/nHr.test.d.ts +0 -1
  206. package/module/es5/tests/unit/Math/nHr.test.js +0 -35
  207. package/module/es5/tests/unit/Math/nPr.test.d.ts +0 -1
  208. package/module/es5/tests/unit/Math/nPr.test.js +0 -38
  209. package/module/es5/tests/unit/Math/primeFactorization.test.d.ts +0 -1
  210. package/module/es5/tests/unit/Math/primeFactorization.test.js +0 -84
  211. package/module/es5/tests/unit/Math/quotient.test.d.ts +0 -1
  212. package/module/es5/tests/unit/Math/quotient.test.js +0 -36
  213. package/module/es5/tests/unit/Math/radToDeg.test.d.ts +0 -1
  214. package/module/es5/tests/unit/Math/radToDeg.test.js +0 -50
  215. package/module/es5/tests/unit/Math/random.test.d.ts +0 -1
  216. package/module/es5/tests/unit/Math/random.test.js +0 -61
  217. package/module/es5/tests/unit/Math/reduce.test.d.ts +0 -1
  218. package/module/es5/tests/unit/Math/reduce.test.js +0 -93
  219. package/module/es5/tests/unit/Math/repeatedTrial.test.d.ts +0 -1
  220. package/module/es5/tests/unit/Math/repeatedTrial.test.js +0 -39
  221. package/module/es5/tests/unit/Math/roundOf.test.d.ts +0 -1
  222. package/module/es5/tests/unit/Math/roundOf.test.js +0 -40
  223. package/module/es5/tests/unit/Math/solveEquation.test.d.ts +0 -1
  224. package/module/es5/tests/unit/Math/solveEquation.test.js +0 -24
  225. package/module/es5/tests/unit/Math/standardDeviation.test.d.ts +0 -1
  226. package/module/es5/tests/unit/Math/standardDeviation.test.js +0 -23
  227. package/module/es5/tests/unit/Math/subtract.test.d.ts +0 -1
  228. package/module/es5/tests/unit/Math/subtract.test.js +0 -46
  229. package/module/es5/tests/unit/Math/toBaseN.test.d.ts +0 -1
  230. package/module/es5/tests/unit/Math/toBaseN.test.js +0 -40
  231. package/module/es5/tests/unit/Math/toCelsius.test.d.ts +0 -1
  232. package/module/es5/tests/unit/Math/toCelsius.test.js +0 -18
  233. package/module/es5/tests/unit/Math/toKelvin.test.d.ts +0 -1
  234. package/module/es5/tests/unit/Math/toKelvin.test.js +0 -18
  235. package/module/es5/tests/unit/Math/uuidv7.test.d.ts +0 -1
  236. package/module/es5/tests/unit/Math/uuidv7.test.js +0 -33
  237. package/module/es5/tests/unit/Math/valueSwap.test.d.ts +0 -1
  238. package/module/es5/tests/unit/Math/valueSwap.test.js +0 -28
  239. package/module/es5/tests/unit/Math/xoshiro256.test.d.ts +0 -1
  240. package/module/es5/tests/unit/Math/xoshiro256.test.js +0 -33
  241. package/module/es5/tests/unit/Object/has.test.d.ts +0 -1
  242. package/module/es5/tests/unit/Object/has.test.js +0 -60
  243. package/module/es5/tests/unit/Object/keyBy.test.d.ts +0 -1
  244. package/module/es5/tests/unit/Object/keyBy.test.js +0 -120
  245. package/module/es5/tests/unit/Object/pick.test.d.ts +0 -1
  246. package/module/es5/tests/unit/Object/pick.test.js +0 -109
  247. package/module/es5/tests/unit/Object/pickDeep.test.d.ts +0 -1
  248. package/module/es5/tests/unit/Object/pickDeep.test.js +0 -222
  249. package/module/es5/tests/unit/Simple/Array/quickSortSimple.test.d.ts +0 -1
  250. package/module/es5/tests/unit/Simple/Array/quickSortSimple.test.js +0 -18
  251. package/module/es5/tests/unit/Simple/Date/dayOfWeekSimple.test.d.ts +0 -1
  252. package/module/es5/tests/unit/Simple/Date/dayOfWeekSimple.test.js +0 -58
  253. package/module/es5/tests/unit/Simple/Math/deviationValueSimple.test.d.ts +0 -1
  254. package/module/es5/tests/unit/Simple/Math/deviationValueSimple.test.js +0 -43
  255. package/module/es5/tests/unit/String/deleteSpaces.test.d.ts +0 -1
  256. package/module/es5/tests/unit/String/deleteSpaces.test.js +0 -22
  257. package/module/es5/tests/unit/String/formatString.test.d.ts +0 -1
  258. package/module/es5/tests/unit/String/formatString.test.js +0 -47
  259. package/module/es5/tests/unit/String/fromBase64.test.d.ts +0 -1
  260. package/module/es5/tests/unit/String/fromBase64.test.js +0 -37
  261. package/module/es5/tests/unit/String/hasNoLetters.test.d.ts +0 -1
  262. package/module/es5/tests/unit/String/hasNoLetters.test.js +0 -29
  263. package/module/es5/tests/unit/String/padEnd.test.d.ts +0 -1
  264. package/module/es5/tests/unit/String/padEnd.test.js +0 -22
  265. package/module/es5/tests/unit/String/padStart.test.d.ts +0 -1
  266. package/module/es5/tests/unit/String/padStart.test.js +0 -40
  267. package/module/es5/tests/unit/String/randomString.test.d.ts +0 -1
  268. package/module/es5/tests/unit/String/randomString.test.js +0 -21
  269. package/module/es5/tests/unit/String/randomStringInitialization.test.d.ts +0 -1
  270. package/module/es5/tests/unit/String/randomStringInitialization.test.js +0 -25
  271. package/module/es5/tests/unit/String/reverseString.test.d.ts +0 -1
  272. package/module/es5/tests/unit/String/reverseString.test.js +0 -35
  273. package/module/es5/tests/unit/String/toBase64.test.d.ts +0 -1
  274. package/module/es5/tests/unit/String/toBase64.test.js +0 -20
  275. package/module/es5/tests/unit/String/toHalfWidth.test.d.ts +0 -1
  276. package/module/es5/tests/unit/String/toHalfWidth.test.js +0 -16
  277. package/module/es5/tests/unit/String/trimCharacters.test.d.ts +0 -1
  278. package/module/es5/tests/unit/String/trimCharacters.test.js +0 -17
  279. package/module/es5/tests/unit/String/trimEndCharacters.test.d.ts +0 -1
  280. package/module/es5/tests/unit/String/trimEndCharacters.test.js +0 -33
  281. package/module/es5/tests/unit/String/trimStartCharacters.test.d.ts +0 -1
  282. package/module/es5/tests/unit/String/trimStartCharacters.test.js +0 -33
  283. package/module/es5/tests/unit/Time/convertTime.test.d.ts +0 -1
  284. package/module/es5/tests/unit/Time/convertTime.test.js +0 -135
  285. package/module/es5/tests/unit/Time/normalizeTimeUnit.test.d.ts +0 -1
  286. package/module/es5/tests/unit/Time/normalizeTimeUnit.test.js +0 -29
  287. package/module/es5/tests/unit/Tool/createPipeline.test.d.ts +0 -1
  288. package/module/es5/tests/unit/Tool/createPipeline.test.js +0 -184
  289. package/module/es5/tests/unit/Tool/parseJson.test.d.ts +0 -1
  290. package/module/es5/tests/unit/Tool/parseJson.test.js +0 -46
  291. package/module/es5/tests/unit/Tool/pipe.test.d.ts +0 -1
  292. package/module/es5/tests/unit/Tool/pipe.test.js +0 -445
  293. package/module/es5/tests/unit/UA/extractBrowserFromUserAgent.test.d.ts +0 -1
  294. package/module/es5/tests/unit/UA/extractBrowserFromUserAgent.test.js +0 -47
  295. package/module/es5/tests/unit/UA/extractDeviceFromUserAgent.test.d.ts +0 -1
  296. package/module/es5/tests/unit/UA/extractDeviceFromUserAgent.test.js +0 -55
  297. package/module/es5/tests/unit/UA/extractOsFromUserAgent.test.d.ts +0 -1
  298. package/module/es5/tests/unit/UA/extractOsFromUserAgent.test.js +0 -57
  299. package/module/es5/tests/unit/UA/parseUserAgent.test.d.ts +0 -1
  300. package/module/es5/tests/unit/UA/parseUserAgent.test.js +0 -95
  301. package/module/es5/tests/unit/Unit/unitConverterInitialization.test.d.ts +0 -1
  302. package/module/es5/tests/unit/Unit/unitConverterInitialization.test.js +0 -40
  303. package/module/es5/tests/unit/Validate/array/core.test.d.ts +0 -1
  304. package/module/es5/tests/unit/Validate/array/core.test.js +0 -86
  305. package/module/es5/tests/unit/Validate/boolean/core.test.d.ts +0 -1
  306. package/module/es5/tests/unit/Validate/boolean/core.test.js +0 -29
  307. package/module/es5/tests/unit/Validate/core/core.test.d.ts +0 -1
  308. package/module/es5/tests/unit/Validate/core/core.test.js +0 -87
  309. package/module/es5/tests/unit/Validate/isArray.test.d.ts +0 -1
  310. package/module/es5/tests/unit/Validate/isArray.test.js +0 -36
  311. package/module/es5/tests/unit/Validate/isDictionaryObject.test.d.ts +0 -1
  312. package/module/es5/tests/unit/Validate/isDictionaryObject.test.js +0 -62
  313. package/module/es5/tests/unit/Validate/isDouble.test.d.ts +0 -1
  314. package/module/es5/tests/unit/Validate/isDouble.test.js +0 -47
  315. package/module/es5/tests/unit/Validate/isEqual.test.d.ts +0 -1
  316. package/module/es5/tests/unit/Validate/isEqual.test.js +0 -74
  317. package/module/es5/tests/unit/Validate/isNotEmpty.test.d.ts +0 -1
  318. package/module/es5/tests/unit/Validate/isNotEmpty.test.js +0 -43
  319. package/module/es5/tests/unit/Validate/isNumber.test.d.ts +0 -1
  320. package/module/es5/tests/unit/Validate/isNumber.test.js +0 -77
  321. package/module/es5/tests/unit/Validate/isPerfectSquare.test.d.ts +0 -1
  322. package/module/es5/tests/unit/Validate/isPerfectSquare.test.js +0 -27
  323. package/module/es5/tests/unit/Validate/isPrimeNumber.test.d.ts +0 -1
  324. package/module/es5/tests/unit/Validate/isPrimeNumber.test.js +0 -51
  325. package/module/es5/tests/unit/Validate/isValueNaN.test.d.ts +0 -1
  326. package/module/es5/tests/unit/Validate/isValueNaN.test.js +0 -54
  327. package/module/es5/tests/unit/Validate/number/core.test.d.ts +0 -1
  328. package/module/es5/tests/unit/Validate/number/core.test.js +0 -36
  329. package/module/es5/tests/unit/Validate/number/double.test.d.ts +0 -1
  330. package/module/es5/tests/unit/Validate/number/double.test.js +0 -23
  331. package/module/es5/tests/unit/Validate/number/even.test.d.ts +0 -1
  332. package/module/es5/tests/unit/Validate/number/even.test.js +0 -23
  333. package/module/es5/tests/unit/Validate/number/maxValue.test.d.ts +0 -1
  334. package/module/es5/tests/unit/Validate/number/maxValue.test.js +0 -20
  335. package/module/es5/tests/unit/Validate/number/minValue.test.d.ts +0 -1
  336. package/module/es5/tests/unit/Validate/number/minValue.test.js +0 -20
  337. package/module/es5/tests/unit/Validate/number/odd.test.d.ts +0 -1
  338. package/module/es5/tests/unit/Validate/number/odd.test.js +0 -23
  339. package/module/es5/tests/unit/Validate/number/prime.test.d.ts +0 -1
  340. package/module/es5/tests/unit/Validate/number/prime.test.js +0 -25
  341. package/module/es5/tests/unit/Validate/object/core.test.d.ts +0 -1
  342. package/module/es5/tests/unit/Validate/object/core.test.js +0 -79
  343. package/module/es5/tests/unit/Validate/string/core.test.d.ts +0 -1
  344. package/module/es5/tests/unit/Validate/string/core.test.js +0 -27
  345. package/module/es5/tests/unit/Validate/string/email.test.d.ts +0 -1
  346. package/module/es5/tests/unit/Validate/string/email.test.js +0 -21
  347. package/module/es5/tests/unit/Validate/string/length.test.d.ts +0 -1
  348. package/module/es5/tests/unit/Validate/string/length.test.js +0 -18
  349. package/module/es5/tests/unit/Validate/string/maxLength.test.d.ts +0 -1
  350. package/module/es5/tests/unit/Validate/string/maxLength.test.js +0 -18
  351. package/module/es5/tests/unit/Validate/string/minLength.test.d.ts +0 -1
  352. package/module/es5/tests/unit/Validate/string/minLength.test.js +0 -18
  353. package/module/es5/tests/unit/Validate/string/numberString.test.d.ts +0 -1
  354. package/module/es5/tests/unit/Validate/string/numberString.test.js +0 -22
  355. package/module/es5/tests/unit/Validate/string/regexMatch.test.d.ts +0 -1
  356. package/module/es5/tests/unit/Validate/string/regexMatch.test.js +0 -29
  357. package/module/es5/tests/unit/Validate/string/uuid.test.d.ts +0 -1
  358. package/module/es5/tests/unit/Validate/string/uuid.test.js +0 -72
  359. package/module/es5/tests/unit/types/arrayType.test.d.ts +0 -1
  360. package/module/es5/tests/unit/types/arrayType.test.js +0 -11
  361. package/module/es5/tests/unit/types/clockType.test.d.ts +0 -1
  362. package/module/es5/tests/unit/types/clockType.test.js +0 -37
@@ -1,46 +0,0 @@
1
- "use strict";
2
-
3
- var _parseJson = require("@/Tool/parseJson");
4
- describe("parseJson", function () {
5
- it("should parse valid JSON string", function () {
6
- var jsonString = '{"key": "value"}';
7
- var result = (0, _parseJson.parseJson)(jsonString);
8
- expect(result).toEqual({
9
- key: "value"
10
- });
11
- });
12
- it("should throw an error for invalid JSON string", function () {
13
- var invalidJsonString = '{"key": "value"';
14
- expect(function () {
15
- return (0, _parseJson.parseJson)(invalidJsonString);
16
- }).toThrow(SyntaxError);
17
- });
18
- it("should parse JSON string with array", function () {
19
- var jsonString = '["value1", "value2"]';
20
- var result = (0, _parseJson.parseJson)(jsonString);
21
- expect(result).toEqual(["value1", "value2"]);
22
- });
23
- it("should parse JSON string with nested objects", function () {
24
- var jsonString = '{"key": {"nestedKey": "nestedValue"}}';
25
- var result = (0, _parseJson.parseJson)(jsonString);
26
- expect(result).toEqual({
27
- key: {
28
- nestedKey: "nestedValue"
29
- }
30
- });
31
- });
32
- it("should parse JSON string with numbers", function () {
33
- var jsonString = '{"key": 123}';
34
- var result = (0, _parseJson.parseJson)(jsonString);
35
- expect(result).toEqual({
36
- key: 123
37
- });
38
- });
39
- it("should parse JSON string with boolean values", function () {
40
- var jsonString = '{"key": true}';
41
- var result = (0, _parseJson.parseJson)(jsonString);
42
- expect(result).toEqual({
43
- key: true
44
- });
45
- });
46
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,445 +0,0 @@
1
- "use strict";
2
-
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
- var _pipe = require("@/Tool/pipe");
5
- var _Validate = require("@/Validate");
6
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
7
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
10
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
12
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
13
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
14
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
- function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
16
- function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
17
- function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
18
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
19
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
21
- function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
22
- function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
23
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
24
- function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
25
- function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
26
- function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
27
- describe("Pipe", function () {
28
- // Direct constructor test
29
- it("creates an instance with the constructor", function () {
30
- var pipeLine = new _pipe.Pipe(42);
31
- expect(pipeLine).toBeInstanceOf(_pipe.Pipe);
32
- expect(pipeLine.end()).toBe(42);
33
- });
34
-
35
- // Extension test
36
- it("can be extended with additional methods", function () {
37
- // Extended pipe class with additional functionality
38
- var ExtendedPipe = /*#__PURE__*/function (_Pipe) {
39
- function ExtendedPipe() {
40
- _classCallCheck(this, ExtendedPipe);
41
- return _callSuper(this, ExtendedPipe, arguments);
42
- }
43
- _inherits(ExtendedPipe, _Pipe);
44
- return _createClass(ExtendedPipe, [{
45
- key: "double",
46
- value: function _double() {
47
- var currentValue = this.end();
48
- if (typeof currentValue === "number") {
49
- return new ExtendedPipe(currentValue * 2);
50
- }
51
- throw new Error("Value is not a number");
52
- }
53
- }, {
54
- key: "prefix",
55
- value: function prefix(str) {
56
- return new ExtendedPipe("".concat(str).concat(this.end()));
57
- }
58
- }]);
59
- }(_pipe.Pipe); // Helper function for the extended pipe
60
- function extendedPipe(value) {
61
- return new ExtendedPipe(value);
62
- }
63
-
64
- // Test the extended functionality
65
- var result = extendedPipe(5)["double"]().map(function (x) {
66
- return x + 1;
67
- }).end();
68
- expect(result).toBe(11);
69
- var strResult = extendedPipe("world").prefix("hello ").map(function (s) {
70
- return s.toUpperCase();
71
- }).end();
72
- expect(strResult).toBe("HELLO WORLD");
73
- });
74
-
75
- // Basic functionality tests
76
- it("returns initial value when calling end()", function () {
77
- var result = (0, _pipe.pipe)(1).end();
78
- expect(result).toBe(1);
79
- });
80
- it("transforms value with map()", function () {
81
- var result = (0, _pipe.pipe)(1).map(function (x) {
82
- return x + 1;
83
- }).end();
84
- expect(result).toBe(2);
85
- });
86
- it("chains multiple map() operations", function () {
87
- var result = (0, _pipe.pipe)(1).map(function (x) {
88
- return x + 1;
89
- }).map(function (x) {
90
- return x * 2;
91
- }).map(function (x) {
92
- return x - 1;
93
- }).end();
94
- expect(result).toBe(3);
95
- });
96
- it("applies transformation when condition is true in when()", function () {
97
- var result = (0, _pipe.pipe)(5).when(function (x) {
98
- return x > 3;
99
- }, function (x) {
100
- return x * 2;
101
- }).end();
102
- expect(result).toBe(10);
103
- });
104
- it("skips transformation when condition is false in when()", function () {
105
- var result = (0, _pipe.pipe)(2).when(function (x) {
106
- return x > 3;
107
- }, function (x) {
108
- return x * 2;
109
- }).end();
110
- expect(result).toBe(2);
111
- });
112
- it("executes side effect and preserves original value with tap()", function () {
113
- var sideEffect = 0;
114
- var result = (0, _pipe.pipe)(5).tap(function (x) {
115
- sideEffect = x;
116
- }).end();
117
- expect(result).toBe(5);
118
- expect(sideEffect).toBe(5);
119
- });
120
- it("correctly infers types", function () {
121
- var numberPipe = (0, _pipe.pipe)(1);
122
- var stringPipe = numberPipe.map(function (x) {
123
- return "".concat(x);
124
- });
125
- var result = stringPipe.end();
126
- expect(result).toBe("1");
127
- });
128
- it("handles complex type inference correctly", function () {
129
- var user = {
130
- id: 1,
131
- name: "John Doe",
132
- age: 30
133
- };
134
- var post = (0, _pipe.pipe)(user).map(function (user) {
135
- return {
136
- id: 1,
137
- title: "First Post",
138
- content: "Hello, world!",
139
- author: user
140
- };
141
- }).end();
142
- expect(post).toEqual({
143
- id: 1,
144
- title: "First Post",
145
- content: "Hello, world!",
146
- author: {
147
- id: 1,
148
- name: "John Doe",
149
- age: 30
150
- }
151
- });
152
- });
153
- it("correctly infers nested generic types", function () {
154
- var users = (0, _pipe.pipe)([]).map(function (users) {
155
- return [].concat(_toConsumableArray(users), [{
156
- id: 1,
157
- name: "John Doe",
158
- age: 30
159
- }]);
160
- }).map(function (users) {
161
- return [].concat(_toConsumableArray(users), [{
162
- id: 2,
163
- name: "Jane Smith",
164
- age: 25
165
- }]);
166
- }).end();
167
- expect(users).toEqual([{
168
- id: 1,
169
- name: "John Doe",
170
- age: 30
171
- }, {
172
- id: 2,
173
- name: "Jane Smith",
174
- age: 25
175
- }]);
176
- });
177
- it("processes null as initial value correctly", function () {
178
- var result = (0, _pipe.pipe)(null).end();
179
- expect(result).toBeNull();
180
- });
181
- it("processes undefined as initial value correctly", function () {
182
- var result = (0, _pipe.pipe)(undefined).end();
183
- expect(result).toBeUndefined();
184
- });
185
- it("processes empty strings correctly", function () {
186
- var result = (0, _pipe.pipe)("").map(function (x) {
187
- return x + "test";
188
- }).map(function (x) {
189
- return x.toUpperCase();
190
- }).end();
191
- expect(result).toBe("TEST");
192
- });
193
- it("processes numeric zero correctly", function () {
194
- var result = (0, _pipe.pipe)(0).map(function (x) {
195
- return x + 1;
196
- }).map(function (x) {
197
- return x * 2;
198
- }).end();
199
- expect(result).toBe(2);
200
- });
201
- it("processes boolean transformations correctly", function () {
202
- var result = (0, _pipe.pipe)(true).map(function (x) {
203
- return !x;
204
- }).map(function (x) {
205
- return x.toString();
206
- }).end();
207
- expect(result).toBe("false");
208
- });
209
- it("processes array transformations correctly", function () {
210
- var result = (0, _pipe.pipe)([1, 2, 3, 4, 5]).map(function (arr) {
211
- return arr.filter(function (x) {
212
- return x % 2 === 0;
213
- });
214
- }).map(function (arr) {
215
- return arr.map(function (x) {
216
- return x * 2;
217
- });
218
- }).end();
219
- expect(result).toEqual([4, 8]);
220
- });
221
- it("processes complex object transformations correctly", function () {
222
- var initial = {
223
- count: 0,
224
- items: []
225
- };
226
- var result = (0, _pipe.pipe)(initial).map(function (data) {
227
- return _objectSpread(_objectSpread({}, data), {}, {
228
- count: data.count + 1
229
- });
230
- }).map(function (data) {
231
- return _objectSpread(_objectSpread({}, data), {}, {
232
- items: [].concat(_toConsumableArray(data.items), ["Item ".concat(data.count)])
233
- });
234
- }).end();
235
- expect(result).toEqual({
236
- count: 1,
237
- items: ["Item 1"]
238
- });
239
- });
240
- it("processes multiple type transformations in chain", function () {
241
- var result = (0, _pipe.pipe)(123).map(function (x) {
242
- return x.toString();
243
- }).map(function (x) {
244
- return x.split("");
245
- }).map(function (arr) {
246
- return arr.map(Number);
247
- }).end();
248
- expect(result).toEqual([1, 2, 3]);
249
- });
250
- it("combines when() and map() for complex processing", function () {
251
- var result = (0, _pipe.pipe)(5).map(function (x) {
252
- return x + 2;
253
- }).when(function (x) {
254
- return x > 5;
255
- }, function (x) {
256
- return x * 2;
257
- }).when(function (x) {
258
- return x < 5;
259
- }, function (x) {
260
- return x - 1;
261
- }).map(function (x) {
262
- return x + 1;
263
- }).end();
264
- expect(result).toBe(15);
265
- });
266
- describe("filterStrict()", function () {
267
- function isValidUser(user) {
268
- return "verified" in user;
269
- }
270
- it("filters and narrows type using type predicate", function () {
271
- var result = (0, _pipe.pipe)(42).filterStrict(function (x) {
272
- return (0, _Validate.isNumber)(x, false);
273
- }).map(function (x) {
274
- return x + 1;
275
- }).end();
276
- expect(result).toBe(43);
277
- });
278
- it("throws error when filter condition is not met", function () {
279
- expect(function () {
280
- (0, _pipe.pipe)("not a number").filterStrict(_Validate.isNumber).end();
281
- }).toThrow("Value did not match filter predicate");
282
- });
283
- it("filters complex types with interface predicates", function () {
284
- var user = {
285
- id: 1,
286
- name: "John",
287
- age: 30,
288
- verified: true
289
- };
290
- var result = (0, _pipe.pipe)(user).filterStrict(isValidUser).map(function (u) {
291
- return u.verified;
292
- }).end();
293
- expect(result).toBe(true);
294
- });
295
- it("combines filterStrict with when and map operations", function () {
296
- var result = (0, _pipe.pipe)(5).filterStrict(function (x) {
297
- return (0, _Validate.isNumber)(x, false);
298
- }).map(function (x) {
299
- return x + 2;
300
- }).when(function (x) {
301
- return x > 5;
302
- }, function (x) {
303
- return x * 2;
304
- }).end();
305
- expect(result).toBe(14);
306
- });
307
- it("correctly handles type narrowing with string | number union types", function () {
308
- var stringResult = (0, _pipe.pipe)("hello").filterStrict(_Validate.isString).map(function (x) {
309
- return x + " world";
310
- }).end();
311
- expect(stringResult).toBe("hello world");
312
- var numberResult = (0, _pipe.pipe)(123).filterStrict(function (x) {
313
- return (0, _Validate.isNumber)(x, false);
314
- }).map(function (x) {
315
- return x * 2;
316
- }).end();
317
- expect(numberResult).toBe(246);
318
- var whenResult = (0, _pipe.pipe)(5).filterStrict(function (x) {
319
- return (0, _Validate.isNumber)(x, false);
320
- }).when(function (x) {
321
- return x > 0;
322
- }, function (x) {
323
- return x * 2;
324
- }).end();
325
- expect(whenResult).toBe(10);
326
- });
327
- });
328
- describe("filterWithDefault()", function () {
329
- it("returns original value when predicate is true", function () {
330
- var result = (0, _pipe.pipe)(42).filterWithDefault(function (x) {
331
- return (0, _Validate.isNumber)(x, false);
332
- }, 0).map(function (x) {
333
- return x + 1;
334
- }).end();
335
- expect(result).toBe(43);
336
- });
337
- it("returns default value when predicate is false", function () {
338
- var result = (0, _pipe.pipe)("not a number").filterWithDefault(function (x) {
339
- return (0, _Validate.isNumber)(x, false);
340
- }, 0).map(function (x) {
341
- return x + 1;
342
- }).end();
343
- expect(result).toBe(1);
344
- });
345
- it("works with complex types", function () {
346
- function isValidUser(user) {
347
- return "verified" in user;
348
- }
349
- var invalidUser = {
350
- id: 1,
351
- name: "John",
352
- age: 30
353
- };
354
- var defaultUser = {
355
- id: 0,
356
- name: "Default",
357
- age: 0,
358
- verified: false
359
- };
360
- var result = (0, _pipe.pipe)(invalidUser).filterWithDefault(isValidUser, defaultUser).map(function (u) {
361
- return u.verified;
362
- }).end();
363
- expect(result).toBe(false);
364
- });
365
- it("maintains type narrowing in subsequent operations", function () {
366
- var result = (0, _pipe.pipe)("hello").filterWithDefault(function (x) {
367
- return (0, _Validate.isNumber)(x, false);
368
- }, 5).map(function (x) {
369
- return x * 2;
370
- }) // x is definitely a number here
371
- .end();
372
- expect(result).toBe(10);
373
- });
374
- });
375
- describe("filterResult()", function () {
376
- it("returns success result when predicate is true", function () {
377
- var result = (0, _pipe.pipe)(42).filterResult(function (x) {
378
- return (0, _Validate.isNumber)(x, false);
379
- }).map(function (result) {
380
- if (result.type === "success") {
381
- return result.value + 1;
382
- }
383
- return 0;
384
- }).end();
385
- expect(result).toBe(43);
386
- });
387
- it("returns error result when predicate is false", function () {
388
- var result = (0, _pipe.pipe)("not a number").filterResult(function (x) {
389
- return (0, _Validate.isNumber)(x, false);
390
- }).map(function (result) {
391
- if (result.type === "error") {
392
- return result.error.message;
393
- }
394
- return "";
395
- }).end();
396
- expect(result).toBe("Value did not match filter predicate");
397
- });
398
- it("can be used with complex types", function () {
399
- function isValidUser(user) {
400
- return "verified" in user;
401
- }
402
- var validUser = {
403
- id: 1,
404
- name: "John",
405
- age: 30,
406
- verified: true
407
- };
408
- var result = (0, _pipe.pipe)(validUser).filterResult(isValidUser).map(function (result) {
409
- if (result.type === "success") {
410
- return result.value.verified;
411
- }
412
- return false;
413
- }).end();
414
- expect(result).toBe(true);
415
- });
416
- it("can be chained with other operations", function () {
417
- var result = (0, _pipe.pipe)(5).filterResult(function (x) {
418
- return (0, _Validate.isNumber)(x, false);
419
- }).map(function (result) {
420
- if (result.type === "success") {
421
- return result.value * 2;
422
- }
423
- return 0;
424
- }).map(function (x) {
425
- return x + 1;
426
- }).end();
427
- expect(result).toBe(11);
428
- });
429
- it("handles error cases gracefully", function () {
430
- var processValue = function processValue(value) {
431
- return (0, _pipe.pipe)(value).filterResult(function (x) {
432
- return (0, _Validate.isNumber)(x, false);
433
- }).map(function (result) {
434
- if (result.type === "success") {
435
- return result.value * 2;
436
- }
437
- return 0; // Default value for error case
438
- }).end();
439
- };
440
- expect(processValue(10)).toBe(20);
441
- expect(processValue("not a number")).toBe(0);
442
- expect(processValue(null)).toBe(0);
443
- });
444
- });
445
- });
@@ -1,47 +0,0 @@
1
- "use strict";
2
-
3
- var _extractBrowserFromUserAgent = require("@/UA/extractBrowserFromUserAgent");
4
- describe("extractBrowserFromUserAgent", function () {
5
- it("should detect Edge browser", function () {
6
- var edgeUA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.57";
7
- var legacyEdgeUA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edge/89.0.774.57";
8
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(edgeUA)).toBe("edge");
9
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(legacyEdgeUA)).toBe("edge");
10
- });
11
- it("should detect desktop Chrome browser", function () {
12
- var chromeUA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
13
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(chromeUA)).toBe("chrome");
14
- });
15
- it("should detect iOS Chrome browser (CriOS)", function () {
16
- var chromeIosUA = "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/89.0.4389.90 Mobile/15E148 Safari/604.1";
17
- var chromeIpadUA = "Mozilla/5.0 (iPad; CPU OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/89.0.4389.90 Mobile/15E148 Safari/604.1";
18
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(chromeIosUA)).toBe("chrome");
19
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(chromeIpadUA)).toBe("chrome");
20
- });
21
- it("should detect Firefox browser", function () {
22
- var firefoxUA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0";
23
- var firefoxIosUA = "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/33.0 Mobile/15E148 Safari/605.1.15";
24
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(firefoxUA)).toBe("firefox");
25
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(firefoxIosUA)).toBe("firefox");
26
- });
27
- it("should detect Safari browser", function () {
28
- var safariUA = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Safari/605.1.15";
29
- var mobileSafariUA = "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1";
30
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(safariUA)).toBe("safari");
31
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(mobileSafariUA)).toBe("safari");
32
- });
33
- it("should detect Internet Explorer", function () {
34
- var ie11UA = "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko";
35
- var ie10UA = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)";
36
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(ie11UA)).toBe("ie");
37
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(ie10UA)).toBe("ie");
38
- });
39
- it("should return 'other' for unknown browsers", function () {
40
- var operaUA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 OPR/75.0.3969.149";
41
- var unknownUA = "Unknown Browser";
42
- var emptyUA = "";
43
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(operaUA)).toBe("other");
44
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(unknownUA)).toBe("other");
45
- expect((0, _extractBrowserFromUserAgent.extractBrowserFromUserAgent)(emptyUA)).toBe("other");
46
- });
47
- });
@@ -1,55 +0,0 @@
1
- "use strict";
2
-
3
- var _extractDeviceFromUserAgent = require("@/UA/extractDeviceFromUserAgent");
4
- describe("extractDeviceFromUserAgent", function () {
5
- it("should detect bots and crawlers", function () {
6
- var googlebot = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)";
7
- var bingbot = "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)";
8
- var crawler = "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)";
9
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(googlebot)).toBe("bot");
10
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(bingbot)).toBe("bot");
11
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(crawler)).toBe("bot");
12
- });
13
- it("should detect mobile devices", function () {
14
- var iphone = "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1";
15
- var androidMobile = "Mozilla/5.0 (Linux; Android 10; SM-A505FN) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Mobile Safari/537.36";
16
- var blackberry = "Mozilla/5.0 (BlackBerry; U; BlackBerry 9900; en) AppleWebKit/534.11+ (KHTML, like Gecko) Version/7.1.0.346 Mobile Safari/534.11+";
17
- var operaMini = "Opera/9.80 (J2ME/MIDP; Opera Mini/5.1.21214/28.2725; U; ru) Presto/2.8.119 Version/11.10";
18
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(iphone)).toBe("mobile");
19
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(androidMobile)).toBe("mobile");
20
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(blackberry)).toBe("mobile");
21
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(operaMini)).toBe("mobile");
22
- });
23
- it("should detect tablets", function () {
24
- var ipad = "Mozilla/5.0 (iPad; CPU OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1";
25
- var androidTablet = "Mozilla/5.0 (Linux; Android 11; SM-T870) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Safari/537.36";
26
- var androidNonMobile = "Mozilla/5.0 (Linux; Android 11; SAMSUNG-SM-T377A Build/NMF26X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Safari/537.36";
27
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(ipad)).toBe("tablet");
28
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(androidTablet)).toBe("tablet");
29
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(androidNonMobile)).toBe("tablet");
30
- });
31
- it("should detect desktop devices", function () {
32
- var windows = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
33
- var mac = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Safari/605.1.15";
34
- var linux = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
35
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(windows)).toBe("desktop");
36
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(mac)).toBe("desktop");
37
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(linux)).toBe("desktop");
38
- });
39
- it("should handle unknown devices", function () {
40
- var empty = "";
41
- var unknown = "Unknown Device";
42
- var customDevice = "Mozilla/5.0 (CustomOS; Device) CustomBrowser/1.0";
43
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(empty)).toBe("other");
44
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(unknown)).toBe("other");
45
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(customDevice)).toBe("other");
46
- });
47
- it("should handle Android edge cases", function () {
48
- // Android device with explicit mobile flag
49
- var androidMobile = "Mozilla/5.0 (Linux; Android 10; Mobile) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Safari/537.36";
50
- // Android device without mobile flag (should be detected as tablet)
51
- var androidNonMobile = "Mozilla/5.0 (Linux; Android 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Safari/537.36";
52
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(androidMobile)).toBe("mobile");
53
- expect((0, _extractDeviceFromUserAgent.extractDeviceFromUserAgent)(androidNonMobile)).toBe("tablet");
54
- });
55
- });
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- var _extractOsFromUserAgent = require("@/UA/extractOsFromUserAgent");
4
- describe("extractOsFromUserAgent", function () {
5
- it("should detect iOS devices", function () {
6
- var iphone = "Mozilla/5.0 (iPhone; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Mobile/15E148 Safari/604.1";
7
- var ipad = "Mozilla/5.0 (iPad; CPU OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1";
8
- var ipod = "Mozilla/5.0 (iPod touch; CPU iPhone OS 14_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1";
9
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(iphone)).toBe("ios");
10
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(ipad)).toBe("ios");
11
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(ipod)).toBe("ios");
12
- });
13
- it("should detect Android devices", function () {
14
- var androidPhone = "Mozilla/5.0 (Linux; Android 10; SM-A505FN) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Mobile Safari/537.36";
15
- var androidTablet = "Mozilla/5.0 (Linux; Android 11; SM-T870) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Safari/537.36";
16
- var androidTV = "Mozilla/5.0 (Linux; Android 10; AndroidTV) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.105 Safari/537.36";
17
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(androidPhone)).toBe("android");
18
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(androidTablet)).toBe("android");
19
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(androidTV)).toBe("android");
20
- });
21
- it("should detect macOS devices", function () {
22
- var macOsSafari = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Safari/605.1.15";
23
- var macOsChrome = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
24
- var macOsFirefox = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:88.0) Gecko/20100101 Firefox/88.0";
25
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(macOsSafari)).toBe("macos");
26
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(macOsChrome)).toBe("macos");
27
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(macOsFirefox)).toBe("macos");
28
- });
29
- it("should detect Windows devices", function () {
30
- var win10Edge = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.57";
31
- var win10Chrome = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
32
- var win7IE = "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko";
33
- var win32UA = "Mozilla/5.0 (Win32; x86) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
34
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(win10Edge)).toBe("windows");
35
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(win10Chrome)).toBe("windows");
36
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(win7IE)).toBe("windows");
37
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(win32UA)).toBe("windows");
38
- });
39
- it("should detect Linux devices", function () {
40
- var ubuntuChrome = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
41
- var fedoraFirefox = "Mozilla/5.0 (X11; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0";
42
- var genericLinux = "Mozilla/5.0 (Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36";
43
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(ubuntuChrome)).toBe("linux");
44
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(fedoraFirefox)).toBe("linux");
45
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(genericLinux)).toBe("linux");
46
- });
47
- it("should handle unknown operating systems", function () {
48
- var empty = "";
49
- var unknown = "Unknown OS";
50
- var customOs = "Mozilla/5.0 (CustomOS) CustomBrowser/1.0";
51
- var bot = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)";
52
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(empty)).toBe("other");
53
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(unknown)).toBe("other");
54
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(customOs)).toBe("other");
55
- expect((0, _extractOsFromUserAgent.extractOsFromUserAgent)(bot)).toBe("other");
56
- });
57
- });