umt 2.1.2 → 2.2.1

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 (921) hide show
  1. package/module/Advance/rangeAdvance.d.ts +10 -6
  2. package/module/Advance/rangeAdvance.js +10 -6
  3. package/module/Advance/rangeAdvance.js.map +1 -1
  4. package/module/Array/arraysJoin.d.ts +4 -4
  5. package/module/Array/arraysJoin.js +4 -4
  6. package/module/Array/binarySearch.d.ts +4 -3
  7. package/module/Array/binarySearch.js +4 -3
  8. package/module/Array/binarySearch.js.map +1 -1
  9. package/module/Array/checkFlagAlignment.d.ts +3 -3
  10. package/module/Array/checkFlagAlignment.js +7 -7
  11. package/module/Array/checkFlagAlignment.js.map +1 -1
  12. package/module/Array/chunk.d.ts +4 -4
  13. package/module/Array/compact.d.ts +8 -0
  14. package/module/Array/compact.js +8 -0
  15. package/module/Array/compact.js.map +1 -1
  16. package/module/Array/compareFunctionDefault.d.ts +13 -0
  17. package/module/Array/compareFunctionDefault.js +13 -0
  18. package/module/Array/compareFunctionDefault.js.map +1 -1
  19. package/module/Array/drop.d.ts +5 -5
  20. package/module/Array/drop.js +5 -5
  21. package/module/Array/dualPivotQuickSort.d.ts +16 -0
  22. package/module/Array/dualPivotQuickSort.js +152 -0
  23. package/module/Array/dualPivotQuickSort.js.map +1 -0
  24. package/module/Array/first.d.ts +3 -3
  25. package/module/Array/first.js +3 -3
  26. package/module/Array/generateNumberArray.d.ts +6 -6
  27. package/module/Array/generateNumberArray.js +6 -6
  28. package/module/Array/getArraysCommon.d.ts +4 -4
  29. package/module/Array/getArraysCommon.js +4 -4
  30. package/module/Array/getArraysDiff.d.ts +4 -4
  31. package/module/Array/getArraysDiff.js +4 -4
  32. package/module/Array/groupBy.d.ts +8 -4
  33. package/module/Array/groupBy.js +8 -4
  34. package/module/Array/groupBy.js.map +1 -1
  35. package/module/Array/index.d.ts +1 -0
  36. package/module/Array/index.js +1 -0
  37. package/module/Array/index.js.map +1 -1
  38. package/module/Array/insertionSort.d.ts +8 -7
  39. package/module/Array/insertionSort.js +6 -6
  40. package/module/Array/insertionSort.js.map +1 -1
  41. package/module/Array/mergeSort.d.ts +6 -5
  42. package/module/Array/mergeSort.js +9 -9
  43. package/module/Array/mergeSort.js.map +1 -1
  44. package/module/Array/quickSort.d.ts +12 -11
  45. package/module/Array/quickSort.js +44 -10
  46. package/module/Array/quickSort.js.map +1 -1
  47. package/module/Array/randomSelect.d.ts +5 -5
  48. package/module/Array/randomSelect.js +5 -5
  49. package/module/Array/range.d.ts +5 -5
  50. package/module/Array/range.js +26 -10
  51. package/module/Array/range.js.map +1 -1
  52. package/module/Array/shuffle.d.ts +3 -3
  53. package/module/Array/shuffle.js +3 -3
  54. package/module/Array/shuffle2DArray.d.ts +4 -4
  55. package/module/Array/shuffle2DArray.js +6 -6
  56. package/module/Array/shuffle2DArray.js.map +1 -1
  57. package/module/Array/sum.d.ts +3 -3
  58. package/module/Array/sum.js +4 -4
  59. package/module/Array/sum.js.map +1 -1
  60. package/module/Array/timSort.d.ts +13 -11
  61. package/module/Array/timSort.js +33 -9
  62. package/module/Array/timSort.js.map +1 -1
  63. package/module/Array/zip.d.ts +6 -3
  64. package/module/Array/zip.js +6 -3
  65. package/module/Array/zip.js.map +1 -1
  66. package/module/Array/zipLongest.d.ts +8 -5
  67. package/module/Array/zipLongest.js +8 -5
  68. package/module/Array/zipLongest.js.map +1 -1
  69. package/module/Color/cmykToRgba.d.ts +7 -7
  70. package/module/Color/cmykToRgba.js +12 -12
  71. package/module/Color/cmykToRgba.js.map +1 -1
  72. package/module/Color/hexaToRgba.d.ts +4 -3
  73. package/module/Color/hexaToRgba.js +18 -7
  74. package/module/Color/hexaToRgba.js.map +1 -1
  75. package/module/Color/hslaToRgba.d.ts +7 -6
  76. package/module/Color/hslaToRgba.js +19 -15
  77. package/module/Color/hslaToRgba.js.map +1 -1
  78. package/module/Color/rgbaToCmyk.d.ts +3 -3
  79. package/module/Color/rgbaToCmyk.js +14 -3
  80. package/module/Color/rgbaToCmyk.js.map +1 -1
  81. package/module/Color/rgbaToHexA.d.ts +4 -4
  82. package/module/Color/rgbaToHexA.js +5 -5
  83. package/module/Color/rgbaToHexA.js.map +1 -1
  84. package/module/Color/rgbaToHsla.d.ts +4 -3
  85. package/module/Color/rgbaToHsla.js +15 -3
  86. package/module/Color/rgbaToHsla.js.map +1 -1
  87. package/module/Consts/clock.d.ts +11 -11
  88. package/module/Consts/clock.js +11 -11
  89. package/module/Consts/httpStatus/httpClientErrorStatus.d.ts +28 -0
  90. package/module/Consts/httpStatus/httpClientErrorStatus.js +28 -0
  91. package/module/Consts/httpStatus/httpClientErrorStatus.js.map +1 -1
  92. package/module/Consts/httpStatus/httpInformationalStatus.d.ts +9 -0
  93. package/module/Consts/httpStatus/httpInformationalStatus.js +9 -0
  94. package/module/Consts/httpStatus/httpInformationalStatus.js.map +1 -1
  95. package/module/Consts/httpStatus/httpRedirectionStatus.d.ts +11 -0
  96. package/module/Consts/httpStatus/httpRedirectionStatus.js +11 -0
  97. package/module/Consts/httpStatus/httpRedirectionStatus.js.map +1 -1
  98. package/module/Consts/httpStatus/httpServerErrorStatus.d.ts +10 -0
  99. package/module/Consts/httpStatus/httpServerErrorStatus.js +10 -0
  100. package/module/Consts/httpStatus/httpServerErrorStatus.js.map +1 -1
  101. package/module/Consts/httpStatus/httpSuccessStatus.d.ts +11 -0
  102. package/module/Consts/httpStatus/httpSuccessStatus.js +11 -0
  103. package/module/Consts/httpStatus/httpSuccessStatus.js.map +1 -1
  104. package/module/Date/birthday.d.ts +7 -6
  105. package/module/Date/birthday.js +7 -6
  106. package/module/Date/birthday.js.map +1 -1
  107. package/module/Date/dateRange.d.ts +7 -4
  108. package/module/Date/dateRange.js +7 -4
  109. package/module/Date/dateRange.js.map +1 -1
  110. package/module/Date/dayOfWeek.d.ts +4 -4
  111. package/module/Date/dayOfWeek.js +4 -4
  112. package/module/Date/format.d.ts +30 -4
  113. package/module/Date/format.js +30 -4
  114. package/module/Date/format.js.map +1 -1
  115. package/module/Date/getDay.d.ts +8 -5
  116. package/module/Date/getDay.js +8 -5
  117. package/module/Date/getDay.js.map +1 -1
  118. package/module/Date/getTimezoneOffsetString.d.ts +3 -3
  119. package/module/Date/getTimezoneOffsetString.js +3 -3
  120. package/module/Date/isLeapYear.d.ts +8 -3
  121. package/module/Date/isLeapYear.js +8 -3
  122. package/module/Date/isLeapYear.js.map +1 -1
  123. package/module/Date/new.d.ts +20 -20
  124. package/module/Date/new.js +21 -21
  125. package/module/Date/new.js.map +1 -1
  126. package/module/Date/now.d.ts +7 -4
  127. package/module/Date/now.js +7 -4
  128. package/module/Date/now.js.map +1 -1
  129. package/module/Error/safeExecute.d.ts +21 -0
  130. package/module/Error/safeExecute.js +20 -0
  131. package/module/Error/safeExecute.js.map +1 -1
  132. package/module/IP/cidrToLong.d.ts +4 -3
  133. package/module/IP/cidrToLong.js +10 -4
  134. package/module/IP/cidrToLong.js.map +1 -1
  135. package/module/IP/cidrToSubnetMask.d.ts +4 -3
  136. package/module/IP/cidrToSubnetMask.js +4 -3
  137. package/module/IP/cidrToSubnetMask.js.map +1 -1
  138. package/module/IP/getIpClass.d.ts +3 -3
  139. package/module/IP/getIpClass.js +30 -18
  140. package/module/IP/getIpClass.js.map +1 -1
  141. package/module/IP/getNetworkAddress.d.ts +5 -4
  142. package/module/IP/getNetworkAddress.js +36 -6
  143. package/module/IP/getNetworkAddress.js.map +1 -1
  144. package/module/IP/ipToBinaryString.d.ts +4 -3
  145. package/module/IP/ipToBinaryString.js +32 -7
  146. package/module/IP/ipToBinaryString.js.map +1 -1
  147. package/module/IP/ipToLong.d.ts +4 -3
  148. package/module/IP/ipToLong.js +4 -3
  149. package/module/IP/ipToLong.js.map +1 -1
  150. package/module/IP/isInRange.d.ts +6 -5
  151. package/module/IP/isInRange.js +33 -7
  152. package/module/IP/isInRange.js.map +1 -1
  153. package/module/IP/isPrivateIp.d.ts +4 -3
  154. package/module/IP/isPrivateIp.js +17 -9
  155. package/module/IP/isPrivateIp.js.map +1 -1
  156. package/module/IP/longToIp.d.ts +4 -3
  157. package/module/IP/longToIp.js +16 -4
  158. package/module/IP/longToIp.js.map +1 -1
  159. package/module/IP/subnetMaskToCidr.d.ts +4 -3
  160. package/module/IP/subnetMaskToCidr.js +28 -12
  161. package/module/IP/subnetMaskToCidr.js.map +1 -1
  162. package/module/Math/addition.d.ts +3 -3
  163. package/module/Math/addition.js +3 -3
  164. package/module/Math/average.d.ts +7 -4
  165. package/module/Math/average.js +7 -4
  166. package/module/Math/average.js.map +1 -1
  167. package/module/Math/bitwise.d.ts +5 -5
  168. package/module/Math/bitwise.js +5 -5
  169. package/module/Math/calculator/calculator.d.ts +9 -7
  170. package/module/Math/calculator/calculator.js +9 -7
  171. package/module/Math/calculator/calculator.js.map +1 -1
  172. package/module/Math/calculator/calculatorInitialization.d.ts +4 -3
  173. package/module/Math/calculator/calculatorInitialization.js +6 -5
  174. package/module/Math/calculator/calculatorInitialization.js.map +1 -1
  175. package/module/Math/calculator/convertCurrency.d.ts +6 -4
  176. package/module/Math/calculator/convertCurrency.js +6 -4
  177. package/module/Math/calculator/convertCurrency.js.map +1 -1
  178. package/module/Math/calculator/core.js +13 -13
  179. package/module/Math/calculator/core.js.map +1 -1
  180. package/module/Math/calculator/literalExpression.d.ts +5 -3
  181. package/module/Math/calculator/literalExpression.js +12 -10
  182. package/module/Math/calculator/literalExpression.js.map +1 -1
  183. package/module/Math/degToRad.d.ts +3 -3
  184. package/module/Math/degToRad.js +3 -3
  185. package/module/Math/deviationValue.d.ts +5 -5
  186. package/module/Math/deviationValue.js +5 -5
  187. package/module/Math/division.d.ts +5 -5
  188. package/module/Math/division.js +31 -21
  189. package/module/Math/division.js.map +1 -1
  190. package/module/Math/factorial.d.ts +3 -3
  191. package/module/Math/factorial.js +3 -3
  192. package/module/Math/factorize.d.ts +3 -3
  193. package/module/Math/factorize.js +3 -3
  194. package/module/Math/flexibleNumberConversion.d.ts +11 -11
  195. package/module/Math/flexibleNumberConversion.js +19 -19
  196. package/module/Math/flexibleNumberConversion.js.map +1 -1
  197. package/module/Math/gcd.d.ts +5 -5
  198. package/module/Math/gcd.js +6 -6
  199. package/module/Math/gcd.js.map +1 -1
  200. package/module/Math/getDecimalLength.d.ts +7 -4
  201. package/module/Math/getDecimalLength.js +9 -5
  202. package/module/Math/getDecimalLength.js.map +1 -1
  203. package/module/Math/lcm.d.ts +4 -4
  204. package/module/Math/lcm.js +5 -5
  205. package/module/Math/lcm.js.map +1 -1
  206. package/module/Math/linearCongruentialGenerator.d.ts +6 -6
  207. package/module/Math/linearCongruentialGenerator.js +6 -6
  208. package/module/Math/mathConverter.d.ts +7 -3
  209. package/module/Math/mathConverter.js +7 -3
  210. package/module/Math/mathConverter.js.map +1 -1
  211. package/module/Math/mathSeparator.d.ts +8 -3
  212. package/module/Math/mathSeparator.js +8 -3
  213. package/module/Math/mathSeparator.js.map +1 -1
  214. package/module/Math/max.d.ts +4 -3
  215. package/module/Math/max.js +4 -3
  216. package/module/Math/max.js.map +1 -1
  217. package/module/Math/median.d.ts +3 -3
  218. package/module/Math/median.js +3 -3
  219. package/module/Math/min.d.ts +4 -3
  220. package/module/Math/min.js +4 -3
  221. package/module/Math/min.js.map +1 -1
  222. package/module/Math/multiples.d.ts +4 -4
  223. package/module/Math/multiples.js +4 -4
  224. package/module/Math/multiplication.d.ts +3 -3
  225. package/module/Math/multiplication.js +3 -3
  226. package/module/Math/nCr.d.ts +7 -4
  227. package/module/Math/nCr.js +7 -4
  228. package/module/Math/nCr.js.map +1 -1
  229. package/module/Math/nHr.d.ts +7 -4
  230. package/module/Math/nHr.js +7 -4
  231. package/module/Math/nHr.js.map +1 -1
  232. package/module/Math/nPr.d.ts +7 -4
  233. package/module/Math/nPr.js +7 -4
  234. package/module/Math/nPr.js.map +1 -1
  235. package/module/Math/primeFactorization.d.ts +6 -3
  236. package/module/Math/primeFactorization.js +11 -8
  237. package/module/Math/primeFactorization.js.map +1 -1
  238. package/module/Math/quotient.d.ts +7 -4
  239. package/module/Math/quotient.js +7 -4
  240. package/module/Math/quotient.js.map +1 -1
  241. package/module/Math/radToDeg.d.ts +5 -3
  242. package/module/Math/radToDeg.js +5 -3
  243. package/module/Math/radToDeg.js.map +1 -1
  244. package/module/Math/random.d.ts +6 -5
  245. package/module/Math/random.js +6 -5
  246. package/module/Math/random.js.map +1 -1
  247. package/module/Math/reduce.d.ts +9 -4
  248. package/module/Math/reduce.js +16 -6
  249. package/module/Math/reduce.js.map +1 -1
  250. package/module/Math/repeatedTrial.d.ts +5 -5
  251. package/module/Math/repeatedTrial.js +5 -5
  252. package/module/Math/roundOf.d.ts +7 -5
  253. package/module/Math/roundOf.js +8 -6
  254. package/module/Math/roundOf.js.map +1 -1
  255. package/module/Math/solveEquation.d.ts +12 -13
  256. package/module/Math/solveEquation.js +32 -37
  257. package/module/Math/solveEquation.js.map +1 -1
  258. package/module/Math/standardDeviation.d.ts +8 -3
  259. package/module/Math/standardDeviation.js +13 -7
  260. package/module/Math/standardDeviation.js.map +1 -1
  261. package/module/Math/subtract.d.ts +10 -4
  262. package/module/Math/subtract.js +12 -6
  263. package/module/Math/subtract.js.map +1 -1
  264. package/module/Math/toBaseN.d.ts +8 -6
  265. package/module/Math/toBaseN.js +9 -7
  266. package/module/Math/toBaseN.js.map +1 -1
  267. package/module/Math/toCelsius.d.ts +5 -3
  268. package/module/Math/toCelsius.js +5 -3
  269. package/module/Math/toCelsius.js.map +1 -1
  270. package/module/Math/toKelvin.d.ts +5 -3
  271. package/module/Math/toKelvin.js +5 -3
  272. package/module/Math/toKelvin.js.map +1 -1
  273. package/module/Math/uuidv7.d.ts +10 -2
  274. package/module/Math/uuidv7.js +10 -2
  275. package/module/Math/uuidv7.js.map +1 -1
  276. package/module/Math/valueSwap.d.ts +5 -4
  277. package/module/Math/valueSwap.js +5 -4
  278. package/module/Math/valueSwap.js.map +1 -1
  279. package/module/Math/xoshiro256.d.ts +8 -3
  280. package/module/Math/xoshiro256.js +8 -3
  281. package/module/Math/xoshiro256.js.map +1 -1
  282. package/module/Object/has.d.ts +4 -4
  283. package/module/Object/has.js +4 -4
  284. package/module/Object/keyBy.d.ts +3 -3
  285. package/module/Object/keyBy.js +4 -4
  286. package/module/Object/pick.d.ts +6 -6
  287. package/module/Object/pick.js +6 -6
  288. package/module/Object/pickDeep.d.ts +7 -7
  289. package/module/Object/pickDeep.js +7 -7
  290. package/module/Simple/Array/quickSortSimple.d.ts +9 -7
  291. package/module/Simple/Array/quickSortSimple.js +7 -6
  292. package/module/Simple/Array/quickSortSimple.js.map +1 -1
  293. package/module/Simple/Date/birthdaySimple.d.ts +4 -4
  294. package/module/Simple/Date/birthdaySimple.js +4 -4
  295. package/module/Simple/Date/dayOfWeekSimple.d.ts +4 -4
  296. package/module/Simple/Date/nowSimple.d.ts +3 -3
  297. package/module/Simple/Date/nowSimple.js +3 -3
  298. package/module/Simple/Math/deviationValueSimple.d.ts +10 -11
  299. package/module/Simple/Math/deviationValueSimple.js +14 -13
  300. package/module/Simple/Math/deviationValueSimple.js.map +1 -1
  301. package/module/String/deleteSpaces.d.ts +8 -4
  302. package/module/String/deleteSpaces.js +8 -4
  303. package/module/String/deleteSpaces.js.map +1 -1
  304. package/module/String/formatString.d.ts +8 -8
  305. package/module/String/formatString.js +7 -7
  306. package/module/String/formatString.js.map +1 -1
  307. package/module/String/fromBase64.d.ts +4 -3
  308. package/module/String/fromBase64.js +15 -9
  309. package/module/String/fromBase64.js.map +1 -1
  310. package/module/String/hasNoLetters.d.ts +9 -3
  311. package/module/String/hasNoLetters.js +12 -6
  312. package/module/String/hasNoLetters.js.map +1 -1
  313. package/module/String/padEnd.d.ts +5 -5
  314. package/module/String/padEnd.js +5 -5
  315. package/module/String/padStart.d.ts +11 -5
  316. package/module/String/padStart.js +17 -5
  317. package/module/String/padStart.js.map +1 -1
  318. package/module/String/randomString.d.ts +4 -4
  319. package/module/String/randomString.js +4 -4
  320. package/module/String/randomStringInitialization.d.ts +3 -3
  321. package/module/String/randomStringInitialization.js +3 -3
  322. package/module/String/reverseString.d.ts +3 -3
  323. package/module/String/reverseString.js +3 -3
  324. package/module/String/toBase64.d.ts +3 -3
  325. package/module/String/toBase64.js +3 -3
  326. package/module/String/toHalfWidth.d.ts +3 -3
  327. package/module/String/toHalfWidth.js +3 -3
  328. package/module/String/trimCharacters.d.ts +4 -4
  329. package/module/String/trimCharacters.js +4 -4
  330. package/module/String/trimEndCharacters.d.ts +10 -4
  331. package/module/String/trimEndCharacters.js +10 -4
  332. package/module/String/trimEndCharacters.js.map +1 -1
  333. package/module/String/trimStartCharacters.d.ts +10 -4
  334. package/module/String/trimStartCharacters.js +10 -4
  335. package/module/String/trimStartCharacters.js.map +1 -1
  336. package/module/Time/convertTime.d.ts +6 -6
  337. package/module/Time/convertTime.js +12 -11
  338. package/module/Time/convertTime.js.map +1 -1
  339. package/module/Tool/createPipeline.d.ts +8 -6
  340. package/module/Tool/createPipeline.js +6 -5
  341. package/module/Tool/createPipeline.js.map +1 -1
  342. package/module/Tool/parseJson.d.ts +7 -0
  343. package/module/Tool/parseJson.js +7 -0
  344. package/module/Tool/parseJson.js.map +1 -1
  345. package/module/UA/extractBrowserFromUserAgent.d.ts +12 -0
  346. package/module/UA/extractBrowserFromUserAgent.js +22 -5
  347. package/module/UA/extractBrowserFromUserAgent.js.map +1 -1
  348. package/module/UA/extractDeviceFromUserAgent.d.ts +12 -0
  349. package/module/UA/extractDeviceFromUserAgent.js +12 -0
  350. package/module/UA/extractDeviceFromUserAgent.js.map +1 -1
  351. package/module/UA/extractOsFromUserAgent.d.ts +12 -0
  352. package/module/UA/extractOsFromUserAgent.js +12 -0
  353. package/module/UA/extractOsFromUserAgent.js.map +1 -1
  354. package/module/UA/parseUserAgent.d.ts +16 -0
  355. package/module/UA/parseUserAgent.js +16 -0
  356. package/module/UA/parseUserAgent.js.map +1 -1
  357. package/module/Unit/unitConverterInitialization.d.ts +15 -0
  358. package/module/Unit/unitConverterInitialization.js +15 -0
  359. package/module/Unit/unitConverterInitialization.js.map +1 -1
  360. package/module/Validate/array/core.d.ts +12 -0
  361. package/module/Validate/array/core.js +15 -3
  362. package/module/Validate/array/core.js.map +1 -1
  363. package/module/Validate/boolean/core.d.ts +9 -0
  364. package/module/Validate/boolean/core.js +9 -0
  365. package/module/Validate/boolean/core.js.map +1 -1
  366. package/module/Validate/core/index.d.ts +10 -0
  367. package/module/Validate/core/index.js +11 -1
  368. package/module/Validate/core/index.js.map +1 -1
  369. package/module/Validate/isArray.d.ts +3 -3
  370. package/module/Validate/isArray.js +3 -3
  371. package/module/Validate/isBrowser.d.ts +1 -1
  372. package/module/Validate/isBrowser.js +1 -1
  373. package/module/Validate/isBun.d.ts +1 -1
  374. package/module/Validate/isBun.js +1 -2
  375. package/module/Validate/isBun.js.map +1 -1
  376. package/module/Validate/isDictionaryObject.d.ts +3 -3
  377. package/module/Validate/isDictionaryObject.js +3 -3
  378. package/module/Validate/isDouble.d.ts +4 -4
  379. package/module/Validate/isDouble.js +4 -4
  380. package/module/Validate/isNode.d.ts +1 -1
  381. package/module/Validate/isNode.js +1 -1
  382. package/module/Validate/isNodeWebkit.d.ts +1 -1
  383. package/module/Validate/isNodeWebkit.js +1 -1
  384. package/module/Validate/isNotEmpty.d.ts +3 -3
  385. package/module/Validate/isNotEmpty.js +4 -4
  386. package/module/Validate/isNotEmpty.js.map +1 -1
  387. package/module/Validate/isNumber.d.ts +4 -4
  388. package/module/Validate/isNumber.js +10 -4
  389. package/module/Validate/isNumber.js.map +1 -1
  390. package/module/Validate/isPerfectSquare.d.ts +8 -3
  391. package/module/Validate/isPerfectSquare.js +8 -3
  392. package/module/Validate/isPerfectSquare.js.map +1 -1
  393. package/module/Validate/isPrimeNumber.d.ts +7 -3
  394. package/module/Validate/isPrimeNumber.js +8 -4
  395. package/module/Validate/isPrimeNumber.js.map +1 -1
  396. package/module/Validate/isValueNaN.d.ts +7 -5
  397. package/module/Validate/isValueNaN.js +7 -5
  398. package/module/Validate/isValueNaN.js.map +1 -1
  399. package/module/Validate/number/core.d.ts +11 -0
  400. package/module/Validate/number/core.js +11 -0
  401. package/module/Validate/number/core.js.map +1 -1
  402. package/module/Validate/number/double.d.ts +9 -0
  403. package/module/Validate/number/double.js +9 -0
  404. package/module/Validate/number/double.js.map +1 -1
  405. package/module/Validate/number/even.d.ts +9 -0
  406. package/module/Validate/number/even.js +9 -0
  407. package/module/Validate/number/even.js.map +1 -1
  408. package/module/Validate/number/maxValue.d.ts +10 -0
  409. package/module/Validate/number/maxValue.js +10 -0
  410. package/module/Validate/number/maxValue.js.map +1 -1
  411. package/module/Validate/number/minValue.d.ts +10 -0
  412. package/module/Validate/number/minValue.js +10 -0
  413. package/module/Validate/number/minValue.js.map +1 -1
  414. package/module/Validate/number/prime.d.ts +9 -0
  415. package/module/Validate/number/prime.js +9 -0
  416. package/module/Validate/number/prime.js.map +1 -1
  417. package/module/Validate/object/core.d.ts +11 -0
  418. package/module/Validate/object/core.js +11 -0
  419. package/module/Validate/object/core.js.map +1 -1
  420. package/module/Validate/string/core.d.ts +11 -0
  421. package/module/Validate/string/core.js +11 -0
  422. package/module/Validate/string/core.js.map +1 -1
  423. package/module/Validate/string/email.d.ts +9 -0
  424. package/module/Validate/string/email.js +10 -1
  425. package/module/Validate/string/email.js.map +1 -1
  426. package/module/Validate/string/length.d.ts +11 -0
  427. package/module/Validate/string/length.js +11 -0
  428. package/module/Validate/string/length.js.map +1 -1
  429. package/module/Validate/string/maxLength.d.ts +10 -0
  430. package/module/Validate/string/maxLength.js +10 -0
  431. package/module/Validate/string/maxLength.js.map +1 -1
  432. package/module/Validate/string/minLength.d.ts +10 -0
  433. package/module/Validate/string/minLength.js +10 -0
  434. package/module/Validate/string/minLength.js.map +1 -1
  435. package/module/Validate/string/numberString.d.ts +9 -0
  436. package/module/Validate/string/numberString.js +9 -0
  437. package/module/Validate/string/numberString.js.map +1 -1
  438. package/module/Validate/string/regexMatch.d.ts +10 -0
  439. package/module/Validate/string/regexMatch.js +10 -0
  440. package/module/Validate/string/regexMatch.js.map +1 -1
  441. package/module/Validate/string/uuid.d.ts +8 -3
  442. package/module/Validate/string/uuid.js +9 -4
  443. package/module/Validate/string/uuid.js.map +1 -1
  444. package/module/Validate/type.d.ts +22 -0
  445. package/module/es5/Advance/rangeAdvance.d.ts +10 -6
  446. package/module/es5/Advance/rangeAdvance.js +10 -6
  447. package/module/es5/Array/arraysJoin.d.ts +4 -4
  448. package/module/es5/Array/arraysJoin.js +4 -4
  449. package/module/es5/Array/binarySearch.d.ts +4 -3
  450. package/module/es5/Array/binarySearch.js +4 -3
  451. package/module/es5/Array/checkFlagAlignment.d.ts +3 -3
  452. package/module/es5/Array/checkFlagAlignment.js +7 -7
  453. package/module/es5/Array/chunk.d.ts +4 -4
  454. package/module/es5/Array/chunk.js +4 -4
  455. package/module/es5/Array/compact.d.ts +8 -0
  456. package/module/es5/Array/compact.js +8 -0
  457. package/module/es5/Array/compareFunctionDefault.d.ts +13 -0
  458. package/module/es5/Array/compareFunctionDefault.js +13 -0
  459. package/module/es5/Array/drop.d.ts +5 -5
  460. package/module/es5/Array/drop.js +5 -5
  461. package/module/es5/Array/dualPivotQuickSort.d.ts +16 -0
  462. package/module/es5/Array/dualPivotQuickSort.js +201 -0
  463. package/module/es5/Array/first.d.ts +3 -3
  464. package/module/es5/Array/first.js +3 -3
  465. package/module/es5/Array/generateNumberArray.d.ts +6 -6
  466. package/module/es5/Array/generateNumberArray.js +6 -6
  467. package/module/es5/Array/getArraysCommon.d.ts +4 -4
  468. package/module/es5/Array/getArraysCommon.js +4 -4
  469. package/module/es5/Array/getArraysDiff.d.ts +4 -4
  470. package/module/es5/Array/getArraysDiff.js +4 -4
  471. package/module/es5/Array/groupBy.d.ts +8 -4
  472. package/module/es5/Array/groupBy.js +8 -4
  473. package/module/es5/Array/index.d.ts +1 -0
  474. package/module/es5/Array/index.js +11 -0
  475. package/module/es5/Array/insertionSort.d.ts +8 -7
  476. package/module/es5/Array/insertionSort.js +6 -6
  477. package/module/es5/Array/mergeSort.d.ts +6 -5
  478. package/module/es5/Array/mergeSort.js +9 -9
  479. package/module/es5/Array/quickSort.d.ts +12 -11
  480. package/module/es5/Array/quickSort.js +47 -10
  481. package/module/es5/Array/randomSelect.d.ts +5 -5
  482. package/module/es5/Array/randomSelect.js +5 -5
  483. package/module/es5/Array/range.d.ts +5 -5
  484. package/module/es5/Array/range.js +28 -10
  485. package/module/es5/Array/shuffle.d.ts +3 -3
  486. package/module/es5/Array/shuffle.js +3 -3
  487. package/module/es5/Array/shuffle2DArray.d.ts +4 -4
  488. package/module/es5/Array/shuffle2DArray.js +6 -6
  489. package/module/es5/Array/sum.d.ts +3 -3
  490. package/module/es5/Array/sum.js +4 -4
  491. package/module/es5/Array/timSort.d.ts +13 -11
  492. package/module/es5/Array/timSort.js +36 -9
  493. package/module/es5/Array/zip.d.ts +6 -3
  494. package/module/es5/Array/zip.js +6 -3
  495. package/module/es5/Array/zipLongest.d.ts +8 -5
  496. package/module/es5/Array/zipLongest.js +8 -5
  497. package/module/es5/Color/cmykToRgba.d.ts +7 -7
  498. package/module/es5/Color/cmykToRgba.js +12 -12
  499. package/module/es5/Color/hexaToRgba.d.ts +4 -3
  500. package/module/es5/Color/hexaToRgba.js +18 -6
  501. package/module/es5/Color/hslaToRgba.d.ts +7 -6
  502. package/module/es5/Color/hslaToRgba.js +19 -13
  503. package/module/es5/Color/rgbaToCmyk.d.ts +3 -3
  504. package/module/es5/Color/rgbaToCmyk.js +7 -3
  505. package/module/es5/Color/rgbaToHexA.d.ts +4 -4
  506. package/module/es5/Color/rgbaToHexA.js +5 -5
  507. package/module/es5/Color/rgbaToHsla.d.ts +4 -3
  508. package/module/es5/Color/rgbaToHsla.js +8 -3
  509. package/module/es5/Consts/clock.d.ts +11 -11
  510. package/module/es5/Consts/clock.js +11 -11
  511. package/module/es5/Consts/httpStatus/httpClientErrorStatus.d.ts +28 -0
  512. package/module/es5/Consts/httpStatus/httpClientErrorStatus.js +28 -0
  513. package/module/es5/Consts/httpStatus/httpInformationalStatus.d.ts +9 -0
  514. package/module/es5/Consts/httpStatus/httpInformationalStatus.js +9 -0
  515. package/module/es5/Consts/httpStatus/httpRedirectionStatus.d.ts +11 -0
  516. package/module/es5/Consts/httpStatus/httpRedirectionStatus.js +11 -0
  517. package/module/es5/Consts/httpStatus/httpServerErrorStatus.d.ts +10 -0
  518. package/module/es5/Consts/httpStatus/httpServerErrorStatus.js +10 -0
  519. package/module/es5/Consts/httpStatus/httpSuccessStatus.d.ts +11 -0
  520. package/module/es5/Consts/httpStatus/httpSuccessStatus.js +11 -0
  521. package/module/es5/Date/birthday.d.ts +7 -6
  522. package/module/es5/Date/birthday.js +7 -6
  523. package/module/es5/Date/dateRange.d.ts +7 -4
  524. package/module/es5/Date/dateRange.js +7 -4
  525. package/module/es5/Date/dayOfWeek.d.ts +4 -4
  526. package/module/es5/Date/dayOfWeek.js +4 -4
  527. package/module/es5/Date/format.d.ts +30 -4
  528. package/module/es5/Date/format.js +30 -4
  529. package/module/es5/Date/getDay.d.ts +8 -5
  530. package/module/es5/Date/getDay.js +8 -5
  531. package/module/es5/Date/getTimezoneOffsetString.d.ts +3 -3
  532. package/module/es5/Date/getTimezoneOffsetString.js +3 -3
  533. package/module/es5/Date/isLeapYear.d.ts +8 -3
  534. package/module/es5/Date/isLeapYear.js +8 -3
  535. package/module/es5/Date/new.d.ts +20 -20
  536. package/module/es5/Date/new.js +21 -21
  537. package/module/es5/Date/now.d.ts +7 -4
  538. package/module/es5/Date/now.js +7 -4
  539. package/module/es5/Error/safeExecute.d.ts +21 -0
  540. package/module/es5/Error/safeExecute.js +36 -0
  541. package/module/es5/IP/cidrToLong.d.ts +4 -3
  542. package/module/es5/IP/cidrToLong.js +7 -3
  543. package/module/es5/IP/cidrToSubnetMask.d.ts +4 -3
  544. package/module/es5/IP/cidrToSubnetMask.js +4 -3
  545. package/module/es5/IP/getIpClass.d.ts +3 -3
  546. package/module/es5/IP/getIpClass.js +44 -18
  547. package/module/es5/IP/getNetworkAddress.d.ts +5 -4
  548. package/module/es5/IP/getNetworkAddress.js +35 -6
  549. package/module/es5/IP/ipToBinaryString.d.ts +4 -3
  550. package/module/es5/IP/ipToBinaryString.js +44 -5
  551. package/module/es5/IP/ipToLong.d.ts +4 -3
  552. package/module/es5/IP/ipToLong.js +4 -3
  553. package/module/es5/IP/isInRange.d.ts +6 -5
  554. package/module/es5/IP/isInRange.js +34 -7
  555. package/module/es5/IP/isPrivateIp.d.ts +4 -3
  556. package/module/es5/IP/isPrivateIp.js +30 -17
  557. package/module/es5/IP/longToIp.d.ts +4 -3
  558. package/module/es5/IP/longToIp.js +17 -5
  559. package/module/es5/IP/subnetMaskToCidr.d.ts +4 -3
  560. package/module/es5/IP/subnetMaskToCidr.js +33 -12
  561. package/module/es5/Math/addition.d.ts +3 -3
  562. package/module/es5/Math/addition.js +3 -3
  563. package/module/es5/Math/average.d.ts +7 -4
  564. package/module/es5/Math/average.js +7 -4
  565. package/module/es5/Math/bitwise.d.ts +5 -5
  566. package/module/es5/Math/bitwise.js +5 -5
  567. package/module/es5/Math/calculator/calculator.d.ts +9 -7
  568. package/module/es5/Math/calculator/calculator.js +9 -7
  569. package/module/es5/Math/calculator/calculatorInitialization.d.ts +4 -3
  570. package/module/es5/Math/calculator/calculatorInitialization.js +6 -5
  571. package/module/es5/Math/calculator/convertCurrency.d.ts +6 -4
  572. package/module/es5/Math/calculator/convertCurrency.js +6 -4
  573. package/module/es5/Math/calculator/core.js +13 -13
  574. package/module/es5/Math/calculator/literalExpression.d.ts +5 -3
  575. package/module/es5/Math/calculator/literalExpression.js +12 -10
  576. package/module/es5/Math/degToRad.d.ts +3 -3
  577. package/module/es5/Math/degToRad.js +3 -3
  578. package/module/es5/Math/deviationValue.d.ts +5 -5
  579. package/module/es5/Math/deviationValue.js +5 -5
  580. package/module/es5/Math/division.d.ts +5 -5
  581. package/module/es5/Math/division.js +35 -21
  582. package/module/es5/Math/factorial.d.ts +3 -3
  583. package/module/es5/Math/factorial.js +3 -3
  584. package/module/es5/Math/factorize.d.ts +3 -3
  585. package/module/es5/Math/factorize.js +3 -3
  586. package/module/es5/Math/flexibleNumberConversion.d.ts +11 -11
  587. package/module/es5/Math/flexibleNumberConversion.js +19 -19
  588. package/module/es5/Math/gcd.d.ts +5 -5
  589. package/module/es5/Math/gcd.js +6 -6
  590. package/module/es5/Math/getDecimalLength.d.ts +7 -4
  591. package/module/es5/Math/getDecimalLength.js +9 -5
  592. package/module/es5/Math/lcm.d.ts +4 -4
  593. package/module/es5/Math/lcm.js +5 -5
  594. package/module/es5/Math/linearCongruentialGenerator.d.ts +6 -6
  595. package/module/es5/Math/linearCongruentialGenerator.js +6 -6
  596. package/module/es5/Math/mathConverter.d.ts +7 -3
  597. package/module/es5/Math/mathConverter.js +7 -3
  598. package/module/es5/Math/mathSeparator.d.ts +8 -3
  599. package/module/es5/Math/mathSeparator.js +8 -3
  600. package/module/es5/Math/max.d.ts +4 -3
  601. package/module/es5/Math/max.js +4 -3
  602. package/module/es5/Math/median.d.ts +3 -3
  603. package/module/es5/Math/median.js +3 -3
  604. package/module/es5/Math/min.d.ts +4 -3
  605. package/module/es5/Math/min.js +4 -3
  606. package/module/es5/Math/multiples.d.ts +4 -4
  607. package/module/es5/Math/multiples.js +4 -4
  608. package/module/es5/Math/multiplication.d.ts +3 -3
  609. package/module/es5/Math/multiplication.js +3 -3
  610. package/module/es5/Math/nCr.d.ts +7 -4
  611. package/module/es5/Math/nCr.js +7 -4
  612. package/module/es5/Math/nHr.d.ts +7 -4
  613. package/module/es5/Math/nHr.js +7 -4
  614. package/module/es5/Math/nPr.d.ts +7 -4
  615. package/module/es5/Math/nPr.js +7 -4
  616. package/module/es5/Math/primeFactorization.d.ts +6 -3
  617. package/module/es5/Math/primeFactorization.js +11 -8
  618. package/module/es5/Math/quotient.d.ts +7 -4
  619. package/module/es5/Math/quotient.js +7 -4
  620. package/module/es5/Math/radToDeg.d.ts +5 -3
  621. package/module/es5/Math/radToDeg.js +5 -3
  622. package/module/es5/Math/random.d.ts +6 -5
  623. package/module/es5/Math/random.js +6 -5
  624. package/module/es5/Math/reduce.d.ts +9 -4
  625. package/module/es5/Math/reduce.js +14 -8
  626. package/module/es5/Math/repeatedTrial.d.ts +5 -5
  627. package/module/es5/Math/repeatedTrial.js +5 -5
  628. package/module/es5/Math/roundOf.d.ts +7 -5
  629. package/module/es5/Math/roundOf.js +8 -6
  630. package/module/es5/Math/solveEquation.d.ts +12 -13
  631. package/module/es5/Math/solveEquation.js +34 -38
  632. package/module/es5/Math/standardDeviation.d.ts +8 -3
  633. package/module/es5/Math/standardDeviation.js +16 -7
  634. package/module/es5/Math/subtract.d.ts +10 -4
  635. package/module/es5/Math/subtract.js +12 -6
  636. package/module/es5/Math/toBaseN.d.ts +8 -6
  637. package/module/es5/Math/toBaseN.js +9 -7
  638. package/module/es5/Math/toCelsius.d.ts +5 -3
  639. package/module/es5/Math/toCelsius.js +5 -3
  640. package/module/es5/Math/toKelvin.d.ts +5 -3
  641. package/module/es5/Math/toKelvin.js +5 -3
  642. package/module/es5/Math/uuidv7.d.ts +10 -2
  643. package/module/es5/Math/uuidv7.js +10 -2
  644. package/module/es5/Math/valueSwap.d.ts +5 -4
  645. package/module/es5/Math/valueSwap.js +5 -4
  646. package/module/es5/Math/xoshiro256.d.ts +8 -3
  647. package/module/es5/Math/xoshiro256.js +8 -3
  648. package/module/es5/Object/has.d.ts +4 -4
  649. package/module/es5/Object/has.js +4 -4
  650. package/module/es5/Object/keyBy.d.ts +3 -3
  651. package/module/es5/Object/keyBy.js +4 -4
  652. package/module/es5/Object/pick.d.ts +6 -6
  653. package/module/es5/Object/pick.js +6 -6
  654. package/module/es5/Object/pickDeep.d.ts +7 -7
  655. package/module/es5/Object/pickDeep.js +7 -7
  656. package/module/es5/Simple/Array/quickSortSimple.d.ts +9 -7
  657. package/module/es5/Simple/Array/quickSortSimple.js +7 -6
  658. package/module/es5/Simple/Date/birthdaySimple.d.ts +4 -4
  659. package/module/es5/Simple/Date/birthdaySimple.js +4 -4
  660. package/module/es5/Simple/Date/dayOfWeekSimple.d.ts +4 -4
  661. package/module/es5/Simple/Date/dayOfWeekSimple.js +4 -4
  662. package/module/es5/Simple/Date/nowSimple.d.ts +3 -3
  663. package/module/es5/Simple/Date/nowSimple.js +3 -3
  664. package/module/es5/Simple/Math/deviationValueSimple.d.ts +10 -11
  665. package/module/es5/Simple/Math/deviationValueSimple.js +23 -12
  666. package/module/es5/String/deleteSpaces.d.ts +8 -4
  667. package/module/es5/String/deleteSpaces.js +8 -4
  668. package/module/es5/String/formatString.d.ts +8 -8
  669. package/module/es5/String/formatString.js +7 -7
  670. package/module/es5/String/fromBase64.d.ts +4 -3
  671. package/module/es5/String/fromBase64.js +14 -9
  672. package/module/es5/String/hasNoLetters.d.ts +9 -3
  673. package/module/es5/String/hasNoLetters.js +12 -6
  674. package/module/es5/String/padEnd.d.ts +5 -5
  675. package/module/es5/String/padEnd.js +5 -5
  676. package/module/es5/String/padStart.d.ts +11 -5
  677. package/module/es5/String/padStart.js +20 -5
  678. package/module/es5/String/randomString.d.ts +4 -4
  679. package/module/es5/String/randomString.js +4 -4
  680. package/module/es5/String/randomStringInitialization.d.ts +3 -3
  681. package/module/es5/String/randomStringInitialization.js +3 -3
  682. package/module/es5/String/reverseString.d.ts +3 -3
  683. package/module/es5/String/reverseString.js +3 -3
  684. package/module/es5/String/toBase64.d.ts +3 -3
  685. package/module/es5/String/toBase64.js +3 -3
  686. package/module/es5/String/toHalfWidth.d.ts +3 -3
  687. package/module/es5/String/toHalfWidth.js +3 -3
  688. package/module/es5/String/trimCharacters.d.ts +4 -4
  689. package/module/es5/String/trimCharacters.js +4 -4
  690. package/module/es5/String/trimEndCharacters.d.ts +10 -4
  691. package/module/es5/String/trimEndCharacters.js +10 -4
  692. package/module/es5/String/trimStartCharacters.d.ts +10 -4
  693. package/module/es5/String/trimStartCharacters.js +10 -4
  694. package/module/es5/Time/convertTime.d.ts +6 -6
  695. package/module/es5/Time/convertTime.js +12 -11
  696. package/module/es5/Tool/createPipeline.d.ts +8 -6
  697. package/module/es5/Tool/createPipeline.js +10 -8
  698. package/module/es5/Tool/parseJson.d.ts +7 -0
  699. package/module/es5/Tool/parseJson.js +7 -0
  700. package/module/es5/UA/extractBrowserFromUserAgent.d.ts +12 -0
  701. package/module/es5/UA/extractBrowserFromUserAgent.js +22 -5
  702. package/module/es5/UA/extractDeviceFromUserAgent.d.ts +12 -0
  703. package/module/es5/UA/extractDeviceFromUserAgent.js +12 -0
  704. package/module/es5/UA/extractOsFromUserAgent.d.ts +12 -0
  705. package/module/es5/UA/extractOsFromUserAgent.js +12 -0
  706. package/module/es5/UA/parseUserAgent.d.ts +16 -0
  707. package/module/es5/UA/parseUserAgent.js +16 -0
  708. package/module/es5/Unit/unitConverterInitialization.d.ts +15 -0
  709. package/module/es5/Unit/unitConverterInitialization.js +15 -0
  710. package/module/es5/Validate/array/core.d.ts +12 -0
  711. package/module/es5/Validate/array/core.js +15 -4
  712. package/module/es5/Validate/boolean/core.d.ts +9 -0
  713. package/module/es5/Validate/boolean/core.js +10 -0
  714. package/module/es5/Validate/core/index.d.ts +10 -0
  715. package/module/es5/Validate/core/index.js +13 -1
  716. package/module/es5/Validate/isArray.d.ts +3 -3
  717. package/module/es5/Validate/isArray.js +3 -3
  718. package/module/es5/Validate/isBrowser.d.ts +1 -1
  719. package/module/es5/Validate/isBrowser.js +1 -1
  720. package/module/es5/Validate/isBun.d.ts +1 -1
  721. package/module/es5/Validate/isBun.js +1 -2
  722. package/module/es5/Validate/isDictionaryObject.d.ts +3 -3
  723. package/module/es5/Validate/isDictionaryObject.js +3 -3
  724. package/module/es5/Validate/isDouble.d.ts +4 -4
  725. package/module/es5/Validate/isDouble.js +4 -4
  726. package/module/es5/Validate/isNode.d.ts +1 -1
  727. package/module/es5/Validate/isNode.js +1 -1
  728. package/module/es5/Validate/isNodeWebkit.d.ts +1 -1
  729. package/module/es5/Validate/isNodeWebkit.js +1 -1
  730. package/module/es5/Validate/isNotEmpty.d.ts +3 -3
  731. package/module/es5/Validate/isNotEmpty.js +4 -4
  732. package/module/es5/Validate/isNumber.d.ts +4 -4
  733. package/module/es5/Validate/isNumber.js +11 -4
  734. package/module/es5/Validate/isPerfectSquare.d.ts +8 -3
  735. package/module/es5/Validate/isPerfectSquare.js +8 -3
  736. package/module/es5/Validate/isPrimeNumber.d.ts +7 -3
  737. package/module/es5/Validate/isPrimeNumber.js +8 -4
  738. package/module/es5/Validate/isValueNaN.d.ts +7 -5
  739. package/module/es5/Validate/isValueNaN.js +7 -5
  740. package/module/es5/Validate/number/core.d.ts +11 -0
  741. package/module/es5/Validate/number/core.js +12 -0
  742. package/module/es5/Validate/number/double.d.ts +9 -0
  743. package/module/es5/Validate/number/double.js +10 -0
  744. package/module/es5/Validate/number/even.d.ts +9 -0
  745. package/module/es5/Validate/number/even.js +10 -0
  746. package/module/es5/Validate/number/maxValue.d.ts +10 -0
  747. package/module/es5/Validate/number/maxValue.js +11 -0
  748. package/module/es5/Validate/number/minValue.d.ts +10 -0
  749. package/module/es5/Validate/number/minValue.js +11 -0
  750. package/module/es5/Validate/number/prime.d.ts +9 -0
  751. package/module/es5/Validate/number/prime.js +10 -0
  752. package/module/es5/Validate/object/core.d.ts +11 -0
  753. package/module/es5/Validate/object/core.js +12 -0
  754. package/module/es5/Validate/string/core.d.ts +11 -0
  755. package/module/es5/Validate/string/core.js +12 -0
  756. package/module/es5/Validate/string/email.d.ts +9 -0
  757. package/module/es5/Validate/string/email.js +11 -1
  758. package/module/es5/Validate/string/length.d.ts +11 -0
  759. package/module/es5/Validate/string/length.js +12 -0
  760. package/module/es5/Validate/string/maxLength.d.ts +10 -0
  761. package/module/es5/Validate/string/maxLength.js +11 -0
  762. package/module/es5/Validate/string/minLength.d.ts +10 -0
  763. package/module/es5/Validate/string/minLength.js +11 -0
  764. package/module/es5/Validate/string/numberString.d.ts +9 -0
  765. package/module/es5/Validate/string/numberString.js +10 -0
  766. package/module/es5/Validate/string/regexMatch.d.ts +10 -0
  767. package/module/es5/Validate/string/regexMatch.js +11 -0
  768. package/module/es5/Validate/string/uuid.d.ts +8 -3
  769. package/module/es5/Validate/string/uuid.js +10 -4
  770. package/module/es5/Validate/type.d.ts +22 -0
  771. package/module/es5/tests/integration/Array/drop-and-first.test.js +20 -0
  772. package/module/es5/tests/integration/Tool/parseJson-and-Validate.test.js +68 -14
  773. package/module/es5/tests/unit/Array/arraysJoin.test.js +15 -3
  774. package/module/es5/tests/unit/Array/checkFlagAlignment.test.js +10 -10
  775. package/module/es5/tests/unit/Array/compact.test.js +17 -17
  776. package/module/es5/tests/unit/Array/compareFunctionDefault.test.d.ts +1 -0
  777. package/module/es5/tests/unit/Array/compareFunctionDefault.test.js +29 -0
  778. package/module/es5/tests/unit/Array/drop.test.js +10 -10
  779. package/module/es5/tests/unit/Array/dualPivotQuickSort.test.d.ts +1 -0
  780. package/module/es5/tests/unit/Array/dualPivotQuickSort.test.js +87 -0
  781. package/module/es5/tests/unit/Array/generateNumberArray.test.js +6 -6
  782. package/module/es5/tests/unit/Array/getArraysCommon.test.js +36 -4
  783. package/module/es5/tests/unit/Array/getArraysDiff.test.js +14 -14
  784. package/module/es5/tests/unit/Array/groupBy.test.js +6 -6
  785. package/module/es5/tests/unit/Array/insertionSort.test.js +8 -8
  786. package/module/es5/tests/unit/Array/mergeSort.test.js +34 -5
  787. package/module/es5/tests/unit/Array/quickSort.test.js +76 -11
  788. package/module/es5/tests/unit/Array/randomSelect.test.js +11 -6
  789. package/module/es5/tests/unit/Array/range.test.js +25 -4
  790. package/module/es5/tests/unit/Array/shuffle.test.js +53 -6
  791. package/module/es5/tests/unit/Array/shuffle2DArray.test.js +51 -8
  792. package/module/es5/tests/unit/Array/sum.test.js +40 -2
  793. package/module/es5/tests/unit/Array/timSort.test.js +89 -9
  794. package/module/es5/tests/unit/Array/zip.test.js +48 -9
  795. package/module/es5/tests/unit/Array/zipLongest.test.js +52 -9
  796. package/module/es5/tests/unit/Color/cmykToRgba.test.js +3 -3
  797. package/module/es5/tests/unit/Color/hexaToRgba.test.js +53 -1
  798. package/module/es5/tests/unit/Color/hslaToRgba.test.js +35 -53
  799. package/module/es5/tests/unit/Color/rgbaToCmyk.test.js +67 -1
  800. package/module/es5/tests/unit/Color/rgbaToHsla.test.js +91 -1
  801. package/module/es5/tests/unit/Consts/clock.test.js +51 -18
  802. package/module/es5/tests/unit/Consts/httpStatus.test.js +9 -0
  803. package/module/es5/tests/unit/Date/birthday.test.d.ts +1 -0
  804. package/module/es5/tests/unit/Date/birthday.test.js +31 -0
  805. package/module/es5/tests/unit/Date/dateRange.test.d.ts +1 -0
  806. package/module/es5/tests/unit/Date/dateRange.test.js +40 -0
  807. package/module/es5/tests/unit/Date/dayOfWeek.test.js +5 -5
  808. package/module/es5/tests/unit/Date/format.test.js +22 -0
  809. package/module/es5/tests/unit/Date/getDay.test.d.ts +1 -0
  810. package/module/es5/tests/unit/Date/getDay.test.js +40 -0
  811. package/module/es5/tests/unit/Date/getTimezoneOffsetString.test.js +3 -3
  812. package/module/es5/tests/unit/Date/isLeapYear.test.d.ts +1 -0
  813. package/module/es5/tests/unit/Date/isLeapYear.test.js +30 -0
  814. package/module/es5/tests/unit/Date/new.test.d.ts +1 -0
  815. package/module/es5/tests/unit/Date/new.test.js +39 -0
  816. package/module/es5/tests/unit/Date/now.test.d.ts +1 -0
  817. package/module/es5/tests/unit/Date/now.test.js +42 -0
  818. package/module/es5/tests/unit/Error/safeExecute.test.js +69 -15
  819. package/module/es5/tests/unit/IP/cidrToLong.test.js +27 -5
  820. package/module/es5/tests/unit/IP/cidrToSubnetMask.test.js +29 -10
  821. package/module/es5/tests/unit/IP/getIpClass.test.js +29 -18
  822. package/module/es5/tests/unit/IP/getNetworkAddress.test.js +35 -14
  823. package/module/es5/tests/unit/IP/ipToBinaryString.test.js +38 -9
  824. package/module/es5/tests/unit/IP/ipToLong.test.js +27 -13
  825. package/module/es5/tests/unit/IP/isInRange.test.js +75 -4
  826. package/module/es5/tests/unit/IP/isPrivateIp.test.js +18 -12
  827. package/module/es5/tests/unit/IP/longToIp.test.d.ts +1 -0
  828. package/module/es5/tests/unit/IP/longToIp.test.js +39 -0
  829. package/module/es5/tests/unit/IP/subnetMaskToCidr.test.js +34 -20
  830. package/module/es5/tests/unit/Math/average.test.js +40 -18
  831. package/module/es5/tests/unit/Math/bitwise.test.js +14 -14
  832. package/module/es5/tests/unit/Math/calculator/calculator.test.js +9 -9
  833. package/module/es5/tests/unit/Math/calculator/calculatorInitialization.test.js +16 -5
  834. package/module/es5/tests/unit/Math/calculator/convertCurrency.test.js +12 -12
  835. package/module/es5/tests/unit/Math/calculator/literalExpression.test.js +8 -8
  836. package/module/es5/tests/unit/Math/degToRad.test.js +10 -10
  837. package/module/es5/tests/unit/Math/deviationValue.test.js +12 -12
  838. package/module/es5/tests/unit/Math/division.test.js +72 -25
  839. package/module/es5/tests/unit/Math/factorial.test.js +4 -4
  840. package/module/es5/tests/unit/Math/factorize.test.js +34 -9
  841. package/module/es5/tests/unit/Math/flexibleNumberConversion.test.js +75 -75
  842. package/module/es5/tests/unit/Math/gcd.test.js +5 -5
  843. package/module/es5/tests/unit/Math/getDecimalLength.test.js +40 -4
  844. package/module/es5/tests/unit/Math/lcm.test.js +16 -9
  845. package/module/es5/tests/unit/Math/linearCongruentialGenerator.test.js +4 -4
  846. package/module/es5/tests/unit/Math/mathConverter.test.js +13 -13
  847. package/module/es5/tests/unit/Math/mathSeparator.test.js +23 -5
  848. package/module/es5/tests/unit/Math/max.test.js +18 -3
  849. package/module/es5/tests/unit/Math/median.test.js +4 -4
  850. package/module/es5/tests/unit/Math/min.test.js +18 -3
  851. package/module/es5/tests/unit/Math/multiples.test.js +26 -10
  852. package/module/es5/tests/unit/Math/multiplication.test.js +43 -9
  853. package/module/es5/tests/unit/Math/nCr.test.js +27 -14
  854. package/module/es5/tests/unit/Math/nHr.test.js +28 -15
  855. package/module/es5/tests/unit/Math/nPr.test.js +31 -14
  856. package/module/es5/tests/unit/Math/primeFactorization.test.js +79 -8
  857. package/module/es5/tests/unit/Math/quotient.test.js +32 -10
  858. package/module/es5/tests/unit/Math/radToDeg.test.js +39 -38
  859. package/module/es5/tests/unit/Math/random.test.js +55 -17
  860. package/module/es5/tests/unit/Math/reduce.test.js +87 -8
  861. package/module/es5/tests/unit/Math/repeatedTrial.test.js +35 -5
  862. package/module/es5/tests/unit/Math/roundOf.test.js +36 -11
  863. package/module/es5/tests/unit/Math/solveEquation.test.js +20 -20
  864. package/module/es5/tests/unit/Math/standardDeviation.test.js +19 -2
  865. package/module/es5/tests/unit/Math/subtract.test.js +14 -2
  866. package/module/es5/tests/unit/Math/toBaseN.test.js +36 -19
  867. package/module/es5/tests/unit/Math/toCelsius.test.js +14 -2
  868. package/module/es5/tests/unit/Math/toKelvin.test.js +14 -2
  869. package/module/es5/tests/unit/Math/uuidv7.test.js +6 -6
  870. package/module/es5/tests/unit/Math/valueSwap.test.js +24 -6
  871. package/module/es5/tests/unit/Math/xoshiro256.test.js +22 -11
  872. package/module/es5/tests/unit/Object/keyBy.test.js +6 -6
  873. package/module/es5/tests/unit/Object/pick.test.js +11 -11
  874. package/module/es5/tests/unit/Object/pickDeep.test.js +15 -15
  875. package/module/es5/tests/unit/Simple/Array/quickSortSimple.test.js +4 -4
  876. package/module/es5/tests/unit/Simple/Math/deviationValueSimple.test.js +39 -3
  877. package/module/es5/tests/unit/String/deleteSpaces.test.d.ts +1 -0
  878. package/module/es5/tests/unit/String/deleteSpaces.test.js +22 -0
  879. package/module/es5/tests/unit/String/formatString.test.js +41 -14
  880. package/module/es5/tests/unit/String/fromBase64.test.js +19 -8
  881. package/module/es5/tests/unit/String/hasNoLetters.test.js +20 -24
  882. package/module/es5/tests/unit/String/padEnd.test.js +5 -5
  883. package/module/es5/tests/unit/String/padStart.test.js +32 -19
  884. package/module/es5/tests/unit/String/randomString.test.js +3 -3
  885. package/module/es5/tests/unit/String/randomStringInitialization.test.js +2 -2
  886. package/module/es5/tests/unit/String/reverseString.test.js +10 -12
  887. package/module/es5/tests/unit/String/toBase64.test.js +5 -5
  888. package/module/es5/tests/unit/String/toHalfWidth.test.js +3 -3
  889. package/module/es5/tests/unit/String/trimCharacters.test.js +4 -4
  890. package/module/es5/tests/unit/String/trimEndCharacters.test.js +17 -7
  891. package/module/es5/tests/unit/String/trimStartCharacters.test.js +23 -10
  892. package/module/es5/tests/unit/Time/convertTime.test.js +40 -46
  893. package/module/es5/tests/unit/Tool/createPipeline.test.js +15 -15
  894. package/module/es5/tests/unit/UA/extractBrowserFromUserAgent.test.d.ts +1 -0
  895. package/module/es5/tests/unit/UA/extractBrowserFromUserAgent.test.js +47 -0
  896. package/module/es5/tests/unit/UA/extractDeviceFromUserAgent.test.d.ts +1 -0
  897. package/module/es5/tests/unit/UA/extractDeviceFromUserAgent.test.js +55 -0
  898. package/module/es5/tests/unit/UA/extractOsFromUserAgent.test.d.ts +1 -0
  899. package/module/es5/tests/unit/UA/extractOsFromUserAgent.test.js +57 -0
  900. package/module/es5/tests/unit/Unit/unitConverterInitialization.test.js +27 -25
  901. package/module/es5/tests/unit/Validate/array/core.test.js +39 -10
  902. package/module/es5/tests/unit/Validate/core/core.test.d.ts +1 -0
  903. package/module/es5/tests/unit/Validate/core/core.test.js +87 -0
  904. package/module/es5/tests/unit/Validate/isArray.test.js +11 -0
  905. package/module/es5/tests/unit/Validate/isDictionaryObject.test.js +15 -1
  906. package/module/es5/tests/unit/Validate/isDouble.test.js +21 -4
  907. package/module/es5/tests/unit/Validate/isNotEmpty.test.js +3 -3
  908. package/module/es5/tests/unit/Validate/isNumber.test.js +67 -29
  909. package/module/es5/tests/unit/Validate/isPerfectSquare.test.js +5 -0
  910. package/module/es5/tests/unit/Validate/isPrimeNumber.test.js +14 -4
  911. package/module/es5/tests/unit/Validate/isValueNaN.test.js +50 -11
  912. package/module/es5/tests/unit/Validate/string/uuid.test.js +13 -13
  913. package/module/es5/tsconfig.tsbuildinfo +1 -1
  914. package/module/es5/types/array/compareFunction.d.ts +2 -0
  915. package/module/es5/types/array/compareFunction.js +5 -0
  916. package/module/es5/types/time/timeUnit.d.ts +1 -1
  917. package/module/types/array/compareFunction.d.ts +2 -0
  918. package/module/types/array/compareFunction.js +2 -0
  919. package/module/types/array/compareFunction.js.map +1 -0
  920. package/module/types/time/timeUnit.d.ts +1 -1
  921. package/package.json +2 -1
@@ -1,17 +1,25 @@
1
- import { ipToLong } from "./ipToLong";
2
1
  import { isInRange } from "./isInRange";
3
2
  /**
4
- * IPアドレスがプライベート範囲にあるかどうかを判定します
5
- * @param {string} ip - 判定するIPアドレス
6
- * @returns {boolean} プライベート範囲にあればtrue
3
+ * Checks if an IP address is within private IP ranges
4
+ * @param {string} ip - IP address to check (e.g., "192.168.1.1")
5
+ * @returns {boolean} True if the IP is private, false otherwise
6
+ * @throws {Error} If IP address is invalid
7
7
  */
8
8
  export const isPrivateIp = (ip) => {
9
- // プライベートIP範囲の定義
9
+ if (!ip) {
10
+ throw new Error("IP address is required");
11
+ }
12
+ // Define private IP ranges with their CIDR notations
10
13
  const privateRanges = [
11
- { start: "10.0.0.0", end: "10.255.255.255" },
12
- { start: "172.16.0.0", end: "172.31.255.255" },
13
- { start: "192.168.0.0", end: "192.168.255.255" },
14
+ { network: "10.0.0.0", cidr: 8 }, // Class A private network
15
+ { network: "172.16.0.0", cidr: 12 }, // Class B private network
16
+ { network: "192.168.0.0", cidr: 16 }, // Class C private network
14
17
  ];
15
- return privateRanges.some((range) => isInRange(ip, range.start, ipToLong(range.end)));
18
+ try {
19
+ return privateRanges.some((range) => isInRange(ip, range.network, range.cidr));
20
+ }
21
+ catch (error) {
22
+ throw new Error(`Invalid IP address: ${String(error)}`);
23
+ }
16
24
  };
17
25
  //# sourceMappingURL=isPrivateIp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isPrivateIp.js","sourceRoot":"","sources":["../../src/IP/isPrivateIp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAU,EAAW,EAAE;IACjD,gBAAgB;IAChB,MAAM,aAAa,GAAG;QACpB,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,gBAAgB,EAAE;QAC5C,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,gBAAgB,EAAE;QAC9C,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,iBAAiB,EAAE;KACjD,CAAC;IAEF,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAClC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAChD,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"isPrivateIp.js","sourceRoot":"","sources":["../../src/IP/isPrivateIp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAU,EAAW,EAAE;IACjD,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,qDAAqD;IACrD,MAAM,aAAa,GAAG;QACpB,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,0BAA0B;QAC5D,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,0BAA0B;QAC/D,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,0BAA0B;KACjE,CAAC;IAEF,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAClC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CACzC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uBAAuB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
- * 32ビットの数値をIPアドレスに変換します
3
- * @param {number} long - 変換する32ビットの数値
4
- * @returns {string} IPアドレス
2
+ * Converts a 32-bit number to an IPv4 address
3
+ * @param {number} long - 32-bit unsigned integer to convert
4
+ * @returns {string} IPv4 address (e.g., "192.168.1.1")
5
+ * @throws {Error} If input is not a valid 32-bit unsigned integer
5
6
  */
6
7
  export declare const longToIp: (long: number) => string;
@@ -1,10 +1,22 @@
1
1
  /**
2
- * 32ビットの数値をIPアドレスに変換します
3
- * @param {number} long - 変換する32ビットの数値
4
- * @returns {string} IPアドレス
2
+ * Converts a 32-bit number to an IPv4 address
3
+ * @param {number} long - 32-bit unsigned integer to convert
4
+ * @returns {string} IPv4 address (e.g., "192.168.1.1")
5
+ * @throws {Error} If input is not a valid 32-bit unsigned integer
5
6
  */
6
7
  export const longToIp = (long) => {
8
+ // Validate input
9
+ if (!Number.isFinite(long) ||
10
+ long < 0 ||
11
+ long > 0xff_ff_ff_ff ||
12
+ !Number.isInteger(long)) {
13
+ throw new Error("Input must be a valid 32-bit unsigned integer");
14
+ }
15
+ // Convert to binary string and ensure 32-bit length
7
16
  const binary = long.toString(2).padStart(32, "0");
8
- return Array.from({ length: 4 }, (_, index) => Number.parseInt(binary.slice(index * 8, (index + 1) * 8), 2)).join(".");
17
+ // Split into octets and convert to decimal
18
+ const octets = Array.from({ length: 4 }, (_, index) => Number.parseInt(binary.slice(index * 8, (index + 1) * 8), 2));
19
+ // Join octets with dots
20
+ return octets.join(".");
9
21
  };
10
22
  //# sourceMappingURL=longToIp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"longToIp.js","sourceRoot":"","sources":["../../src/IP/longToIp.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE;IAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAC5C,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAC7D,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC,CAAC"}
1
+ {"version":3,"file":"longToIp.js","sourceRoot":"","sources":["../../src/IP/longToIp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE;IAC/C,iBAAiB;IACjB,IACE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QACtB,IAAI,GAAG,CAAC;QACR,IAAI,GAAG,aAAa;QACpB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EACvB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,oDAAoD;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAElD,2CAA2C;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACpD,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAC7D,CAAC;IAEF,wBAAwB;IACxB,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
- * サブネットマスクからCIDRを取得します
3
- * @param {string} subnetMask - サブネットマスク
4
- * @returns {number} CIDR
2
+ * Converts a subnet mask to CIDR notation
3
+ * @param {string} subnetMask - IPv4 subnet mask (e.g., "255.255.255.0")
4
+ * @returns {number} CIDR notation (0-32)
5
+ * @throws {Error} If subnet mask is invalid
5
6
  */
6
7
  export declare const subnetMaskToCidr: (subnetMask: string) => number;
@@ -1,18 +1,34 @@
1
- import { ipToBinaryString } from "./ipToBinaryString";
2
- import { isValueNaN } from "../Validate/isValueNaN";
3
1
  /**
4
- * サブネットマスクからCIDRを取得します
5
- * @param {string} subnetMask - サブネットマスク
6
- * @returns {number} CIDR
2
+ * Converts a subnet mask to CIDR notation
3
+ * @param {string} subnetMask - IPv4 subnet mask (e.g., "255.255.255.0")
4
+ * @returns {number} CIDR notation (0-32)
5
+ * @throws {Error} If subnet mask is invalid
7
6
  */
8
7
  export const subnetMaskToCidr = (subnetMask) => {
9
- // サブネットマスクが有効なIPアドレス形式かどうかをチェック
10
- const octets = subnetMask.split(".").map(Number);
11
- if (octets.length !== 4 ||
12
- octets.some((octet) => isValueNaN(octet, true) || octet < 0 || octet > 255)) {
13
- return 0;
8
+ if (!subnetMask) {
9
+ throw new Error("Subnet mask is required");
14
10
  }
15
- return ipToBinaryString(subnetMask).match(/1/g)
16
- .length;
11
+ // Parse octets and validate format
12
+ const octets = subnetMask.split(".");
13
+ if (octets.length !== 4) {
14
+ throw new Error("Invalid subnet mask format");
15
+ }
16
+ // Validate each octet
17
+ const binaryOctets = octets.map((octet) => {
18
+ const number_ = Number.parseInt(octet);
19
+ if (Number.isNaN(number_) || number_ < 0 || number_ > 255) {
20
+ throw new Error("Invalid subnet mask format");
21
+ }
22
+ return number_.toString(2).padStart(8, "0");
23
+ });
24
+ // Join octets and count consecutive 1s
25
+ const binaryString = binaryOctets.join("");
26
+ const match = binaryString.match(/^1*0*$/);
27
+ if (!match) {
28
+ throw new Error("Invalid subnet mask: must be consecutive 1s followed by 0s");
29
+ }
30
+ // Count 1s
31
+ const cidr = binaryString.match(/1/g)?.length ?? 0;
32
+ return cidr;
17
33
  };
18
34
  //# sourceMappingURL=subnetMaskToCidr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subnetMaskToCidr.js","sourceRoot":"","sources":["../../src/IP/subnetMaskToCidr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,UAAkB,EAAU,EAAE;IAC7D,gCAAgC;IAChC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,IACE,MAAM,CAAC,MAAM,KAAK,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,EAC3E,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAQ,gBAAgB,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAsB;SAClE,MAAgB,CAAC;AACtB,CAAC,CAAC"}
1
+ {"version":3,"file":"subnetMaskToCidr.js","sourceRoot":"","sources":["../../src/IP/subnetMaskToCidr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,UAAkB,EAAU,EAAE;IAC7D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,mCAAmC;IACnC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,sBAAsB;IACtB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IAED,WAAW;IACX,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IACnD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * 誤差のない足し算
3
- * @param {number[]} numbers
4
- * @returns number
2
+ * Addition without floating point errors
3
+ * @param {number[]} numbers Numbers to add
4
+ * @returns number Sum of the numbers
5
5
  * @example addition(0.1, 0.2); // 0.3
6
6
  */
7
7
  export declare const addition: (...numbers: number[]) => number;
@@ -2,9 +2,9 @@ import { getDecimalLength } from "./getDecimalLength";
2
2
  import { max } from "./max";
3
3
  import { multiplication } from "./multiplication";
4
4
  /**
5
- * 誤差のない足し算
6
- * @param {number[]} numbers
7
- * @returns number
5
+ * Addition without floating point errors
6
+ * @param {number[]} numbers Numbers to add
7
+ * @returns number Sum of the numbers
8
8
  * @example addition(0.1, 0.2); // 0.3
9
9
  */
10
10
  export const addition = (...numbers) => {
@@ -1,7 +1,10 @@
1
1
  /**
2
- * 平均値
3
- * @param {number[]} numbers
4
- * @returns number
5
- * @example average([1, 2, 3]); // 2
2
+ * Calculates the arithmetic mean of an array of numbers
3
+ * @param {number[]} numbers - Array of numbers to average
4
+ * @returns {number} The arithmetic mean, returns 0 for empty array
5
+ * @example
6
+ * average([1, 2, 3]); // 2
7
+ * average([10, 20]); // 15
8
+ * average([]); // 0
6
9
  */
7
10
  export declare const average: (numbers: number[]) => number;
@@ -1,10 +1,13 @@
1
1
  import { addition } from "./addition";
2
2
  import { division } from "./division";
3
3
  /**
4
- * 平均値
5
- * @param {number[]} numbers
6
- * @returns number
7
- * @example average([1, 2, 3]); // 2
4
+ * Calculates the arithmetic mean of an array of numbers
5
+ * @param {number[]} numbers - Array of numbers to average
6
+ * @returns {number} The arithmetic mean, returns 0 for empty array
7
+ * @example
8
+ * average([1, 2, 3]); // 2
9
+ * average([10, 20]); // 15
10
+ * average([]); // 0
8
11
  */
9
12
  export const average = (numbers) => {
10
13
  if (numbers.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"average.js","sourceRoot":"","sources":["../../src/Math/average.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAiB,EAAU,EAAE;IACnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
1
+ {"version":3,"file":"average.js","sourceRoot":"","sources":["../../src/Math/average.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAiB,EAAU,EAAE;IACnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
@@ -1,9 +1,9 @@
1
1
  /**
2
- * ビット回転を行う関数
3
- * @param x 回転させる32ビット整数
4
- * @param k 回転するビット数
5
- * @param direction 回転方向 ('left' または 'right')
6
- * @returns 指定された方向にkビット回転された結果
2
+ * Performs bit rotation on a number
3
+ * @param x 32-bit integer to rotate
4
+ * @param k Number of bits to rotate
5
+ * @param direction Direction of rotation ('left' or 'right')
6
+ * @returns The result after rotating k bits in the specified direction
7
7
  * @example
8
8
  * const resultLeft = bitwise(0x12345678, 8);
9
9
  * console.log(resultLeft.toString(16)); // '34567812'
@@ -1,9 +1,9 @@
1
1
  /**
2
- * ビット回転を行う関数
3
- * @param x 回転させる32ビット整数
4
- * @param k 回転するビット数
5
- * @param direction 回転方向 ('left' または 'right')
6
- * @returns 指定された方向にkビット回転された結果
2
+ * Performs bit rotation on a number
3
+ * @param x 32-bit integer to rotate
4
+ * @param k Number of bits to rotate
5
+ * @param direction Direction of rotation ('left' or 'right')
6
+ * @returns The result after rotating k bits in the specified direction
7
7
  * @example
8
8
  * const resultLeft = bitwise(0x12345678, 8);
9
9
  * console.log(resultLeft.toString(16)); // '34567812'
@@ -1,10 +1,12 @@
1
1
  /**
2
- * 電卓
3
- * ()や符号に対応
4
- * 一文字までの方程式に対応
5
- * @param {string} expression 計算式または方程式
6
- * @param {object} exchange 為替
7
- * @returns 計算結果
8
- * @example calculator("1+2"); // 3
2
+ * Calculator function that handles mathematical expressions and simple equations
3
+ * Supports parentheses, signs, and currency conversion
4
+ * Handles simple equations with single-character variables
5
+ * @param {string} expression - Mathematical expression or equation
6
+ * @param {object} exchange - Exchange rates for currency conversion
7
+ * @returns {string} Calculation result
8
+ * @example calculator("1+2"); // "3"
9
+ * @example calculator("(2+3)*4"); // "20"
10
+ * @example calculator("x=5"); // "x=5"
9
11
  */
10
12
  export declare const calculator: <T extends Record<string, string | number>>(expression: string, exchange?: T) => string;
@@ -1,13 +1,15 @@
1
1
  import { calculatorCore } from "./core";
2
2
  import { literalExpression } from "./literalExpression";
3
3
  /**
4
- * 電卓
5
- * ()や符号に対応
6
- * 一文字までの方程式に対応
7
- * @param {string} expression 計算式または方程式
8
- * @param {object} exchange 為替
9
- * @returns 計算結果
10
- * @example calculator("1+2"); // 3
4
+ * Calculator function that handles mathematical expressions and simple equations
5
+ * Supports parentheses, signs, and currency conversion
6
+ * Handles simple equations with single-character variables
7
+ * @param {string} expression - Mathematical expression or equation
8
+ * @param {object} exchange - Exchange rates for currency conversion
9
+ * @returns {string} Calculation result
10
+ * @example calculator("1+2"); // "3"
11
+ * @example calculator("(2+3)*4"); // "20"
12
+ * @example calculator("x=5"); // "x=5"
11
13
  */
12
14
  export const calculator = (expression, exchange) => {
13
15
  const cleanExpression = expression.replaceAll(/\s+/g, "");
@@ -1 +1 @@
1
- {"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/Math/calculator/calculator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,UAAkB,EAClB,QAAY,EACZ,EAAE;IACF,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClC,CAAC,CAAC,iBAAiB,CAAC,eAAe,CAAC;QACpC,CAAC,CAAC,cAAc,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AAChD,CAAC,CAAC"}
1
+ {"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../../src/Math/calculator/calculator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,UAAkB,EAClB,QAAY,EACZ,EAAE;IACF,MAAM,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClC,CAAC,CAAC,iBAAiB,CAAC,eAAe,CAAC;QACpC,CAAC,CAAC,cAAc,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AAChD,CAAC,CAAC"}
@@ -1,8 +1,9 @@
1
1
  /**
2
- * 電卓関数を初期化する
3
- * @param {object} exchange - 為替レート
4
- * @return {Function} - calculator
2
+ * Initializes a calculator function with exchange rates
3
+ * @param {object} exchange - Exchange rates object
4
+ * @return {Function} - Configured calculator function
5
5
  * @example calculatorInitialization({ $: 100 })("$1"); // "100"
6
+ * @example calculatorInitialization({ EUR: 1.2 })("EUR5 + 10"); // "16"
6
7
  */
7
8
  export declare const calculatorInitialization: <T extends {
8
9
  [key: string]: string | number;
@@ -1,14 +1,15 @@
1
1
  import { calculator } from "./calculator";
2
2
  /**
3
- * 電卓関数を初期化する
4
- * @param {object} exchange - 為替レート
5
- * @return {Function} - calculator
3
+ * Initializes a calculator function with exchange rates
4
+ * @param {object} exchange - Exchange rates object
5
+ * @return {Function} - Configured calculator function
6
6
  * @example calculatorInitialization({ $: 100 })("$1"); // "100"
7
+ * @example calculatorInitialization({ EUR: 1.2 })("EUR5 + 10"); // "16"
7
8
  */
8
9
  export const calculatorInitialization = (exchange) => {
9
10
  /**
10
- * @param {string} x - 金額
11
- * @return {string} - 計算結果
11
+ * @param {string} x - Expression to calculate
12
+ * @return {string} - Calculation result
12
13
  */
13
14
  return (x) => calculator(x, exchange);
14
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"calculatorInitialization.js","sourceRoot":"","sources":["../../../src/Math/calculator/calculatorInitialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAGtC,QAAW,EACc,EAAE;IAC3B;;;OAGG;IACH,OAAO,CAAC,CAAS,EAAU,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC,CAAC"}
1
+ {"version":3,"file":"calculatorInitialization.js","sourceRoot":"","sources":["../../../src/Math/calculator/calculatorInitialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAGtC,QAAW,EACc,EAAE;IAC3B;;;OAGG;IACH,OAAO,CAAC,CAAS,EAAU,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC,CAAC"}
@@ -1,10 +1,12 @@
1
1
  /**
2
- * 文字列内の通貨記号を利用して通貨を換算する。
2
+ * Converts currency amounts in a string using currency symbols.
3
3
  *
4
- * @param inputString - 換算する通貨額を含む文字列
5
- * @param conversionRates - 通貨記号と換算レートのオブジェクト
6
- * @returns 換算後の通貨額を文字列で返す。換算できない場合は元の文字列を返す。
4
+ * @param {string} inputString - String containing a currency amount to convert
5
+ * @param {object} conversionRates - Object mapping currency symbols to conversion rates
6
+ * @returns {string} Converted currency amount as a string, or the original string if conversion is not possible
7
7
  * @example convertCurrency("¥100", { "¥": 0.01 }); // "1"
8
+ * @example convertCurrency("$50", { "$": 1.2 }); // "60"
9
+ * @example convertCurrency("€200", { "€": 1.1 }); // "220"
8
10
  */
9
11
  export declare const convertCurrency: <T extends {
10
12
  [key: string]: number | string;
@@ -1,12 +1,14 @@
1
1
  import { multiplication } from "../../Math/multiplication";
2
2
  import { isNumber } from "../../Validate/isNumber";
3
3
  /**
4
- * 文字列内の通貨記号を利用して通貨を換算する。
4
+ * Converts currency amounts in a string using currency symbols.
5
5
  *
6
- * @param inputString - 換算する通貨額を含む文字列
7
- * @param conversionRates - 通貨記号と換算レートのオブジェクト
8
- * @returns 換算後の通貨額を文字列で返す。換算できない場合は元の文字列を返す。
6
+ * @param {string} inputString - String containing a currency amount to convert
7
+ * @param {object} conversionRates - Object mapping currency symbols to conversion rates
8
+ * @returns {string} Converted currency amount as a string, or the original string if conversion is not possible
9
9
  * @example convertCurrency("¥100", { "¥": 0.01 }); // "1"
10
+ * @example convertCurrency("$50", { "$": 1.2 }); // "60"
11
+ * @example convertCurrency("€200", { "€": 1.1 }); // "220"
10
12
  */
11
13
  export const convertCurrency = (inputString, conversionRates) => {
12
14
  if (!conversionRates) {
@@ -1 +1 @@
1
- {"version":3,"file":"convertCurrency.js","sourceRoot":"","sources":["../../../src/Math/calculator/convertCurrency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAK7B,WAAmB,EACnB,eAAmB,EACnB,EAAE;IACF,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC9D,MAAM,IAAI,GAAoB,eAAe,CAAC,cAAc,CAAC,CAAC;YAE9D,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBACpC,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7D,OAAO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;oBAClC,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC"}
1
+ {"version":3,"file":"convertCurrency.js","sourceRoot":"","sources":["../../../src/Math/calculator/convertCurrency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAK7B,WAAmB,EACnB,eAAmB,EACnB,EAAE;IACF,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC9D,MAAM,IAAI,GAAoB,eAAe,CAAC,cAAc,CAAC,CAAC;YAE9D,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBACpC,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7D,OAAO,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;oBAClC,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC"}
@@ -6,15 +6,15 @@ import { subtract } from "../../Math/subtract";
6
6
  import { isNumber } from "../../Validate/isNumber";
7
7
  export const calculatorCore = (expression, currencyExchange) => {
8
8
  let sanitizedExpression = expression;
9
- // 符号の処理
9
+ // Handle signs
10
10
  sanitizedExpression = sanitizeSigns(sanitizedExpression);
11
- // 主要な計算ループ
11
+ // Main calculation loop
12
12
  while (true) {
13
- // 通貨計算
13
+ // Currency conversion
14
14
  if (currencyExchange) {
15
15
  sanitizedExpression = applyCurrencyExchange(sanitizedExpression, currencyExchange);
16
16
  }
17
- // 括弧の処理
17
+ // Handle parentheses
18
18
  if (containsParentheses(sanitizedExpression)) {
19
19
  const temporary = resolveParentheses(sanitizedExpression);
20
20
  if (temporary === Number.NaN.toString()) {
@@ -22,7 +22,7 @@ export const calculatorCore = (expression, currencyExchange) => {
22
22
  }
23
23
  sanitizedExpression = temporary;
24
24
  }
25
- // 乗算、べき乗の処理
25
+ // Handle multiplication and exponentiation
26
26
  else if (containsMulExp(sanitizedExpression)) {
27
27
  const temporary = resolveMulExp(sanitizedExpression);
28
28
  if (temporary === Number.NaN.toString()) {
@@ -30,7 +30,7 @@ export const calculatorCore = (expression, currencyExchange) => {
30
30
  }
31
31
  sanitizedExpression = temporary;
32
32
  }
33
- // 除算の処理
33
+ // Handle division
34
34
  else if (containsDiv(sanitizedExpression)) {
35
35
  const temporary = resolveDiv(sanitizedExpression);
36
36
  if (temporary === Number.NaN.toString()) {
@@ -38,7 +38,7 @@ export const calculatorCore = (expression, currencyExchange) => {
38
38
  }
39
39
  sanitizedExpression = temporary;
40
40
  }
41
- // 加算と減算の処理
41
+ // Handle addition and subtraction
42
42
  else if (containsAddSub(sanitizedExpression) &&
43
43
  !isNumber(sanitizedExpression)) {
44
44
  const temporary = resolveAddSub(sanitizedExpression);
@@ -47,7 +47,7 @@ export const calculatorCore = (expression, currencyExchange) => {
47
47
  }
48
48
  sanitizedExpression = temporary;
49
49
  }
50
- // もう計算するものがなければ結果を返す
50
+ // Return result if no more calculations needed
51
51
  else {
52
52
  return sanitizedExpression;
53
53
  }
@@ -62,7 +62,7 @@ const sanitizeSigns = (expr) => {
62
62
  };
63
63
  const applyCurrencyExchange = (expr, rates) => {
64
64
  let returnExpr = expr;
65
- // 通貨の交換ロジック
65
+ // Currency exchange logic
66
66
  for (const index in rates) {
67
67
  if (returnExpr.includes(index)) {
68
68
  const $ = returnExpr.match(new RegExp(`\\${index}([0-9]+)`));
@@ -77,7 +77,7 @@ const containsParentheses = (expr) => {
77
77
  return expr.includes("(") || expr.includes(")");
78
78
  };
79
79
  const resolveParentheses = (expr) => {
80
- // 括弧内の計算ロジック
80
+ // Logic for calculations inside parentheses
81
81
  const match = expr.match(/\(\d+\.?(\d+)?([*+/-])\d+\.?(\d+)?\)/);
82
82
  if (match) {
83
83
  return expr.replace(match[0], calculatorCore(match[0].replaceAll(/\(|\)/g, "")));
@@ -91,7 +91,7 @@ const containsDiv = (expr) => {
91
91
  return expr.includes("/");
92
92
  };
93
93
  const resolveMulExp = (expr) => {
94
- // 乗算、べき乗の計算ロジック
94
+ // Logic for multiplication and exponentiation
95
95
  const match = expr.match(/(.*?)(\d+\.?(\d+)?([*^])\d+\.?(\d+)?$)/);
96
96
  if (match) {
97
97
  const operands = match[2].split(/([*/^])/);
@@ -103,7 +103,7 @@ const resolveMulExp = (expr) => {
103
103
  return Number.NaN.toString();
104
104
  };
105
105
  const resolveDiv = (expr) => {
106
- // 除算の計算ロジック
106
+ // Logic for division
107
107
  const match = expr.match(/\d+\.?(\d+)?(\/)\d+\.?(\d+)?/);
108
108
  if (match) {
109
109
  const operands = match[0].split(/(\/)/);
@@ -116,7 +116,7 @@ const containsAddSub = (expr) => {
116
116
  return expr.includes("+") || expr.includes("-");
117
117
  };
118
118
  const resolveAddSub = (expr) => {
119
- // 加算、減算の計算ロジック
119
+ // Logic for addition and subtraction
120
120
  const match = expr.match(/(-?\d+)\.?(\d+)?(\+|-)(-?\d+)\.?(\d+)?/);
121
121
  if (match) {
122
122
  const result = match[3] === "+"
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/Math/calculator/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/Math/calculator/core.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  /**
2
- * 文字式の方程式を計算する
3
- * @param x 方程式の文字列
4
- * @returns 計算結果
2
+ * Solves literal equations with variables
3
+ * @param {string} x - Equation string
4
+ * @returns {string} Solution result
5
5
  * @example literalExpression("x+1=2"); // "1"
6
+ * @example literalExpression("2x=6"); // "3"
7
+ * @example literalExpression("3x+2=8"); // "2"
6
8
  */
7
9
  export declare const literalExpression: (x: string) => string;
@@ -2,16 +2,18 @@ import { calculatorCore } from "./core";
2
2
  import { division } from "../../Math/division";
3
3
  import { gcd } from "../../Math/gcd";
4
4
  /**
5
- * 文字式の方程式を計算する
6
- * @param x 方程式の文字列
7
- * @returns 計算結果
5
+ * Solves literal equations with variables
6
+ * @param {string} x - Equation string
7
+ * @returns {string} Solution result
8
8
  * @example literalExpression("x+1=2"); // "1"
9
+ * @example literalExpression("2x=6"); // "3"
10
+ * @example literalExpression("3x+2=8"); // "2"
9
11
  */
10
12
  export const literalExpression = (x) => {
11
- // 方程式の数値と変数部分を格納
13
+ // Store numerical and variable parts of the equation
12
14
  let numericalPart = "";
13
15
  let variablePart = [];
14
- // 等号で分割し、数値と変数部分を識別
16
+ // Split by equals sign and identify numerical and variable parts
15
17
  for (const part of x.split("=")) {
16
18
  if (/[A-Za-z]+/.test(part)) {
17
19
  variablePart = part
@@ -22,7 +24,7 @@ export const literalExpression = (x) => {
22
24
  numericalPart = part;
23
25
  }
24
26
  }
25
- // 変数部分の計算
27
+ // Calculate the variable part (and invert signs for moving to other side of equation)
26
28
  if (variablePart[1]) {
27
29
  variablePart[1] = calculatorCore(variablePart[1])
28
30
  .replaceAll("+", "plus")
@@ -30,19 +32,19 @@ export const literalExpression = (x) => {
30
32
  .replaceAll("plus", "-")
31
33
  .replaceAll("minus", "+");
32
34
  }
33
- // 数値部分の計算
35
+ // Calculate the numerical part
34
36
  numericalPart = variablePart[1]
35
37
  ? calculatorCore(`${numericalPart}${variablePart[1]}`)
36
38
  : calculatorCore(numericalPart);
37
- // 変数部分を再分割
39
+ // Split the variable part again to separate coefficient and variable
38
40
  variablePart = variablePart[0]
39
41
  .split(/(\d+)|([A-Za-z]+)/)
40
42
  .filter((n) => n && n !== undefined);
41
- // 数値がない場合は計算結果を返す
43
+ // If there's no coefficient, return the numerical result
42
44
  if (Number.isNaN(Number(variablePart[0]))) {
43
45
  return numericalPart;
44
46
  }
45
- // 最大公約数で簡約
47
+ // Simplify using greatest common divisor
46
48
  const commonGcd = gcd(Number(variablePart[0]), Number(numericalPart));
47
49
  if (commonGcd !== 1) {
48
50
  numericalPart = `${division(Number(numericalPart), commonGcd)}/${division(Number(variablePart[0]), commonGcd)}`;
@@ -1 +1 @@
1
- {"version":3,"file":"literalExpression.js","sourceRoot":"","sources":["../../../src/Math/calculator/literalExpression.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAU,EAAE;IACrD,iBAAiB;IACjB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,YAAY,GAAa,EAAE,CAAC;IAEhC,oBAAoB;IACpB,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,YAAY,GAAG,IAAI;iBAChB,KAAK,CAAC,6BAA6B,CAAC;iBACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;IAED,UAAU;IACV,IAAI,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACpB,YAAY,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;aAC9C,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;aACvB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;aACxB,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC;aACvB,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,UAAU;IACV,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,cAAc,CAAC,GAAG,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAElC,WAAW;IACX,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,mBAAmB,CAAC;SAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;IAEvC,kBAAkB;IAClB,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,WAAW;IACX,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IACtE,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,aAAa,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,IAAI,QAAQ,CACvE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACvB,SAAS,CACV,EAAE,CAAC;QACJ,IAAI,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,OAAO,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5B,aAAa,GAAG,GAAG,aAAa,IAAI,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
1
+ {"version":3,"file":"literalExpression.js","sourceRoot":"","sources":["../../../src/Math/calculator/literalExpression.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAU,EAAE;IACrD,qDAAqD;IACrD,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,YAAY,GAAa,EAAE,CAAC;IAEhC,iEAAiE;IACjE,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,YAAY,GAAG,IAAI;iBAChB,KAAK,CAAC,6BAA6B,CAAC;iBACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;IAED,sFAAsF;IACtF,IAAI,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACpB,YAAY,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;aAC9C,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;aACvB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;aACxB,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC;aACvB,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,+BAA+B;IAC/B,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,cAAc,CAAC,GAAG,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAElC,qEAAqE;IACrE,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,mBAAmB,CAAC;SAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;IAEvC,yDAAyD;IACzD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,yCAAyC;IACzC,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IACtE,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,aAAa,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,IAAI,QAAQ,CACvE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACvB,SAAS,CACV,EAAE,CAAC;QACJ,IAAI,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,OAAO,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5B,aAAa,GAAG,GAAG,aAAa,IAAI,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * 角度をラジアンに変換
3
- * @param {number} x
4
- * @returns number
2
+ * Converts degrees to radians
3
+ * @param {number} x Angle in degrees
4
+ * @returns number Angle in radians
5
5
  * @example degToRad(180); // 3.141592653589793
6
6
  */
7
7
  export declare const degToRad: (x: number) => number;