locutus 2.0.12 → 2.0.16

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 (419) hide show
  1. package/_util/cli.js.map +1 -1
  2. package/_util/util.js +11 -16
  3. package/_util/util.js.map +1 -1
  4. package/c/index.js +2 -2
  5. package/c/index.js.map +1 -1
  6. package/c/math/index.js +2 -2
  7. package/c/math/index.js.map +1 -1
  8. package/c/stdio/index.js +1 -1
  9. package/c/stdio/index.js.map +1 -1
  10. package/c/stdio/sprintf.js +8 -1
  11. package/c/stdio/sprintf.js.map +1 -1
  12. package/golang/index.js +1 -1
  13. package/golang/index.js.map +1 -1
  14. package/golang/strings/Count.js +1 -1
  15. package/golang/strings/Count.js.map +1 -1
  16. package/golang/strings/index.js +4 -4
  17. package/golang/strings/index.js.map +1 -1
  18. package/index.js +5 -5
  19. package/index.js.map +1 -1
  20. package/package.json +39 -40
  21. package/php/_helpers/_bc.js +104 -48
  22. package/php/_helpers/_bc.js.map +1 -1
  23. package/php/_helpers/_phpCastString.js.map +1 -1
  24. package/php/_helpers/_php_cast_float.js.map +1 -1
  25. package/php/_helpers/_php_cast_int.js.map +1 -1
  26. package/php/_helpers/index.js +4 -4
  27. package/php/_helpers/index.js.map +1 -1
  28. package/php/array/array_change_key_case.js +2 -2
  29. package/php/array/array_change_key_case.js.map +1 -1
  30. package/php/array/array_chunk.js +1 -1
  31. package/php/array/array_chunk.js.map +1 -1
  32. package/php/array/array_column.js.map +1 -1
  33. package/php/array/array_combine.js.map +1 -1
  34. package/php/array/array_count_values.js.map +1 -1
  35. package/php/array/array_diff.js.map +1 -1
  36. package/php/array/array_diff_assoc.js.map +1 -1
  37. package/php/array/array_diff_key.js.map +1 -1
  38. package/php/array/array_diff_uassoc.js.map +1 -1
  39. package/php/array/array_diff_ukey.js.map +1 -1
  40. package/php/array/array_fill.js +1 -1
  41. package/php/array/array_fill.js.map +1 -1
  42. package/php/array/array_fill_keys.js.map +1 -1
  43. package/php/array/array_filter.js +1 -1
  44. package/php/array/array_filter.js.map +1 -1
  45. package/php/array/array_flip.js +1 -1
  46. package/php/array/array_flip.js.map +1 -1
  47. package/php/array/array_intersect.js.map +1 -1
  48. package/php/array/array_intersect_assoc.js.map +1 -1
  49. package/php/array/array_intersect_key.js.map +1 -1
  50. package/php/array/array_intersect_uassoc.js.map +1 -1
  51. package/php/array/array_intersect_ukey.js.map +1 -1
  52. package/php/array/array_keys.js.map +1 -1
  53. package/php/array/array_map.js.map +1 -1
  54. package/php/array/array_merge.js +1 -1
  55. package/php/array/array_merge.js.map +1 -1
  56. package/php/array/array_merge_recursive.js.map +1 -1
  57. package/php/array/array_multisort.js +16 -16
  58. package/php/array/array_multisort.js.map +1 -1
  59. package/php/array/array_pad.js +1 -1
  60. package/php/array/array_pad.js.map +1 -1
  61. package/php/array/array_pop.js.map +1 -1
  62. package/php/array/array_product.js.map +1 -1
  63. package/php/array/array_push.js.map +1 -1
  64. package/php/array/array_rand.js.map +1 -1
  65. package/php/array/array_reduce.js.map +1 -1
  66. package/php/array/array_replace.js.map +1 -1
  67. package/php/array/array_replace_recursive.js +1 -1
  68. package/php/array/array_replace_recursive.js.map +1 -1
  69. package/php/array/array_reverse.js +1 -1
  70. package/php/array/array_reverse.js.map +1 -1
  71. package/php/array/array_search.js.map +1 -1
  72. package/php/array/array_shift.js +0 -19
  73. package/php/array/array_shift.js.map +1 -1
  74. package/php/array/array_slice.js.map +1 -1
  75. package/php/array/array_splice.js.map +1 -1
  76. package/php/array/array_sum.js +1 -1
  77. package/php/array/array_sum.js.map +1 -1
  78. package/php/array/array_udiff.js.map +1 -1
  79. package/php/array/array_udiff_assoc.js.map +1 -1
  80. package/php/array/array_udiff_uassoc.js.map +1 -1
  81. package/php/array/array_uintersect.js.map +1 -1
  82. package/php/array/array_uintersect_uassoc.js.map +1 -1
  83. package/php/array/array_unique.js.map +1 -1
  84. package/php/array/array_unshift.js.map +1 -1
  85. package/php/array/array_values.js.map +1 -1
  86. package/php/array/array_walk.js.map +1 -1
  87. package/php/array/array_walk_recursive.js.map +1 -1
  88. package/php/array/arsort.js +3 -3
  89. package/php/array/arsort.js.map +1 -1
  90. package/php/array/asort.js +3 -3
  91. package/php/array/asort.js.map +1 -1
  92. package/php/array/count.js +1 -1
  93. package/php/array/count.js.map +1 -1
  94. package/php/array/current.js.map +1 -1
  95. package/php/array/each.js.map +1 -1
  96. package/php/array/end.js +1 -1
  97. package/php/array/end.js.map +1 -1
  98. package/php/array/in_array.js.map +1 -1
  99. package/php/array/index.js +73 -72
  100. package/php/array/index.js.map +1 -1
  101. package/php/array/key.js.map +1 -1
  102. package/php/array/krsort.js +3 -3
  103. package/php/array/krsort.js.map +1 -1
  104. package/php/array/ksort.js +3 -3
  105. package/php/array/ksort.js.map +1 -1
  106. package/php/array/natcasesort.js +2 -2
  107. package/php/array/natcasesort.js.map +1 -1
  108. package/php/array/natsort.js +2 -2
  109. package/php/array/natsort.js.map +1 -1
  110. package/php/array/next.js.map +1 -1
  111. package/php/array/pos.js.map +1 -1
  112. package/php/array/prev.js.map +1 -1
  113. package/php/array/range.js +3 -3
  114. package/php/array/range.js.map +1 -1
  115. package/php/array/reset.js.map +1 -1
  116. package/php/array/rsort.js +3 -3
  117. package/php/array/rsort.js.map +1 -1
  118. package/php/array/shuffle.js.map +1 -1
  119. package/php/array/sizeof.js.map +1 -1
  120. package/php/array/sort.js +3 -3
  121. package/php/array/sort.js.map +1 -1
  122. package/php/array/uasort.js.map +1 -1
  123. package/php/array/uksort.js.map +1 -1
  124. package/php/array/usort.js.map +1 -1
  125. package/php/bc/bcadd.js +3 -1
  126. package/php/bc/bcadd.js.map +1 -1
  127. package/php/bc/bccomp.js +2 -1
  128. package/php/bc/bccomp.js.map +1 -1
  129. package/php/bc/bcdiv.js +3 -1
  130. package/php/bc/bcdiv.js.map +1 -1
  131. package/php/bc/bcmul.js +3 -1
  132. package/php/bc/bcmul.js.map +1 -1
  133. package/php/bc/bcround.js +4 -2
  134. package/php/bc/bcround.js.map +1 -1
  135. package/php/bc/bcscale.js.map +1 -1
  136. package/php/bc/bcsub.js +3 -1
  137. package/php/bc/bcsub.js.map +1 -1
  138. package/php/bc/index.js +7 -7
  139. package/php/bc/index.js.map +1 -1
  140. package/php/ctype/ctype_alnum.js.map +1 -1
  141. package/php/ctype/ctype_alpha.js.map +1 -1
  142. package/php/ctype/ctype_cntrl.js.map +1 -1
  143. package/php/ctype/ctype_digit.js.map +1 -1
  144. package/php/ctype/ctype_graph.js.map +1 -1
  145. package/php/ctype/ctype_lower.js.map +1 -1
  146. package/php/ctype/ctype_print.js.map +1 -1
  147. package/php/ctype/ctype_punct.js.map +1 -1
  148. package/php/ctype/ctype_space.js.map +1 -1
  149. package/php/ctype/ctype_upper.js.map +1 -1
  150. package/php/ctype/ctype_xdigit.js.map +1 -1
  151. package/php/ctype/index.js +11 -11
  152. package/php/ctype/index.js.map +1 -1
  153. package/php/datetime/date.js +2 -1
  154. package/php/datetime/date.js.map +1 -1
  155. package/php/datetime/date_parse.js +1 -1
  156. package/php/datetime/date_parse.js.map +1 -1
  157. package/php/datetime/getdate.js.map +1 -1
  158. package/php/datetime/gettimeofday.js.map +1 -1
  159. package/php/datetime/gmdate.js.map +1 -1
  160. package/php/datetime/gmmktime.js.map +1 -1
  161. package/php/datetime/gmstrftime.js.map +1 -1
  162. package/php/datetime/idate.js +1 -1
  163. package/php/datetime/idate.js.map +1 -1
  164. package/php/datetime/index.js +15 -15
  165. package/php/datetime/index.js.map +1 -1
  166. package/php/datetime/microtime.js +3 -3
  167. package/php/datetime/microtime.js.map +1 -1
  168. package/php/datetime/mktime.js.map +1 -1
  169. package/php/datetime/strftime.js +2 -3
  170. package/php/datetime/strftime.js.map +1 -1
  171. package/php/datetime/strptime.js +20 -21
  172. package/php/datetime/strptime.js.map +1 -1
  173. package/php/datetime/strtotime.js +170 -4
  174. package/php/datetime/strtotime.js.map +1 -1
  175. package/php/exec/escapeshellarg.js +12 -4
  176. package/php/exec/escapeshellarg.js.map +1 -1
  177. package/php/exec/index.js +1 -1
  178. package/php/exec/index.js.map +1 -1
  179. package/php/filesystem/basename.js.map +1 -1
  180. package/php/filesystem/file_get_contents.js.map +1 -1
  181. package/php/filesystem/index.js +5 -5
  182. package/php/filesystem/index.js.map +1 -1
  183. package/php/filesystem/pathinfo.js +7 -8
  184. package/php/filesystem/pathinfo.js.map +1 -1
  185. package/php/filesystem/realpath.js.map +1 -1
  186. package/php/funchand/call_user_func.js.map +1 -1
  187. package/php/funchand/call_user_func_array.js +1 -1
  188. package/php/funchand/call_user_func_array.js.map +1 -1
  189. package/php/funchand/function_exists.js.map +1 -1
  190. package/php/funchand/get_defined_functions.js.map +1 -1
  191. package/php/funchand/index.js +5 -5
  192. package/php/funchand/index.js.map +1 -1
  193. package/php/i18n/i18n_loc_get_default.js.map +1 -1
  194. package/php/i18n/i18n_loc_set_default.js.map +1 -1
  195. package/php/i18n/index.js +2 -2
  196. package/php/i18n/index.js.map +1 -1
  197. package/php/index.js +19 -19
  198. package/php/index.js.map +1 -1
  199. package/php/info/assert_options.js +2 -1
  200. package/php/info/assert_options.js.map +1 -1
  201. package/php/info/index.js +6 -6
  202. package/php/info/index.js.map +1 -1
  203. package/php/info/ini_get.js.map +1 -1
  204. package/php/info/ini_set.js.map +1 -1
  205. package/php/info/set_time_limit.js.map +1 -1
  206. package/php/info/version_compare.js +21 -22
  207. package/php/info/version_compare.js.map +1 -1
  208. package/php/json/index.js +3 -3
  209. package/php/json/index.js.map +1 -1
  210. package/php/json/json_decode.js +1 -1
  211. package/php/json/json_decode.js.map +1 -1
  212. package/php/json/json_encode.js +1 -1
  213. package/php/json/json_encode.js.map +1 -1
  214. package/php/json/json_last_error.js.map +1 -1
  215. package/php/math/fmod.js +2 -2
  216. package/php/math/fmod.js.map +1 -1
  217. package/php/math/hypot.js.map +1 -1
  218. package/php/math/index.js +46 -46
  219. package/php/math/index.js.map +1 -1
  220. package/php/math/is_finite.js.map +1 -1
  221. package/php/math/is_infinite.js.map +1 -1
  222. package/php/math/is_nan.js.map +1 -1
  223. package/php/math/log1p.js.map +1 -1
  224. package/php/math/max.js +7 -7
  225. package/php/math/max.js.map +1 -1
  226. package/php/math/min.js +5 -5
  227. package/php/math/min.js.map +1 -1
  228. package/php/math/mt_rand.js.map +1 -1
  229. package/php/math/rand.js.map +1 -1
  230. package/php/math/round.js +1 -1
  231. package/php/math/round.js.map +1 -1
  232. package/php/misc/index.js +2 -2
  233. package/php/misc/index.js.map +1 -1
  234. package/php/misc/pack.js +23 -18
  235. package/php/misc/pack.js.map +1 -1
  236. package/php/misc/uniqid.js +1 -1
  237. package/php/misc/uniqid.js.map +1 -1
  238. package/php/net-gopher/gopher_parsedir.js +3 -4
  239. package/php/net-gopher/gopher_parsedir.js.map +1 -1
  240. package/php/net-gopher/index.js +1 -1
  241. package/php/net-gopher/index.js.map +1 -1
  242. package/php/network/index.js +6 -6
  243. package/php/network/index.js.map +1 -1
  244. package/php/network/inet_ntop.js.map +1 -1
  245. package/php/network/inet_pton.js +40 -32
  246. package/php/network/inet_pton.js.map +1 -1
  247. package/php/network/setcookie.js.map +1 -1
  248. package/php/network/setrawcookie.js.map +1 -1
  249. package/php/pcre/index.js +4 -3
  250. package/php/pcre/index.js.map +1 -1
  251. package/php/pcre/preg_replace.js +24 -0
  252. package/php/pcre/preg_replace.js.map +1 -0
  253. package/php/pcre/sql_regcase.js.map +1 -1
  254. package/php/strings/addcslashes.js.map +1 -1
  255. package/php/strings/bin2hex.js +3 -3
  256. package/php/strings/bin2hex.js.map +1 -1
  257. package/php/strings/chop.js.map +1 -1
  258. package/php/strings/convert_cyr_string.js +1 -1
  259. package/php/strings/convert_cyr_string.js.map +1 -1
  260. package/php/strings/convert_uuencode.js.map +1 -1
  261. package/php/strings/count_chars.js +1 -1
  262. package/php/strings/count_chars.js.map +1 -1
  263. package/php/strings/crc32.js.map +1 -1
  264. package/php/strings/echo.js.map +1 -1
  265. package/php/strings/explode.js.map +1 -1
  266. package/php/strings/get_html_translation_table.js +1 -1
  267. package/php/strings/get_html_translation_table.js.map +1 -1
  268. package/php/strings/hex2bin.js +1 -1
  269. package/php/strings/hex2bin.js.map +1 -1
  270. package/php/strings/html_entity_decode.js.map +1 -1
  271. package/php/strings/htmlentities.js.map +1 -1
  272. package/php/strings/htmlspecialchars.js +6 -6
  273. package/php/strings/htmlspecialchars.js.map +1 -1
  274. package/php/strings/htmlspecialchars_decode.js +6 -6
  275. package/php/strings/htmlspecialchars_decode.js.map +1 -1
  276. package/php/strings/implode.js.map +1 -1
  277. package/php/strings/index.js +91 -91
  278. package/php/strings/index.js.map +1 -1
  279. package/php/strings/join.js.map +1 -1
  280. package/php/strings/lcfirst.js.map +1 -1
  281. package/php/strings/levenshtein.js +6 -1
  282. package/php/strings/levenshtein.js.map +1 -1
  283. package/php/strings/localeconv.js.map +1 -1
  284. package/php/strings/ltrim.js.map +1 -1
  285. package/php/strings/md5.js +19 -15
  286. package/php/strings/md5.js.map +1 -1
  287. package/php/strings/md5_file.js.map +1 -1
  288. package/php/strings/metaphone.js +2 -2
  289. package/php/strings/metaphone.js.map +1 -1
  290. package/php/strings/money_format.js.map +1 -1
  291. package/php/strings/nl2br.js.map +1 -1
  292. package/php/strings/nl_langinfo.js.map +1 -1
  293. package/php/strings/number_format.js.map +1 -1
  294. package/php/strings/ord.js.map +1 -1
  295. package/php/strings/parse_str.js +13 -13
  296. package/php/strings/parse_str.js.map +1 -1
  297. package/php/strings/printf.js.map +1 -1
  298. package/php/strings/quoted_printable_decode.js.map +1 -1
  299. package/php/strings/quoted_printable_encode.js.map +1 -1
  300. package/php/strings/rtrim.js.map +1 -1
  301. package/php/strings/setlocale.js +18 -19
  302. package/php/strings/setlocale.js.map +1 -1
  303. package/php/strings/sha1.js +12 -7
  304. package/php/strings/sha1.js.map +1 -1
  305. package/php/strings/sha1_file.js.map +1 -1
  306. package/php/strings/similar_text.js +4 -4
  307. package/php/strings/similar_text.js.map +1 -1
  308. package/php/strings/soundex.js +3 -3
  309. package/php/strings/soundex.js.map +1 -1
  310. package/php/strings/split.js.map +1 -1
  311. package/php/strings/sprintf.js +7 -2
  312. package/php/strings/sprintf.js.map +1 -1
  313. package/php/strings/sscanf.js +2 -2
  314. package/php/strings/sscanf.js.map +1 -1
  315. package/php/strings/str_getcsv.js +2 -2
  316. package/php/strings/str_getcsv.js.map +1 -1
  317. package/php/strings/str_ireplace.js +6 -0
  318. package/php/strings/str_ireplace.js.map +1 -1
  319. package/php/strings/str_pad.js +1 -1
  320. package/php/strings/str_pad.js.map +1 -1
  321. package/php/strings/str_repeat.js.map +1 -1
  322. package/php/strings/str_replace.js +6 -0
  323. package/php/strings/str_replace.js.map +1 -1
  324. package/php/strings/str_shuffle.js +1 -1
  325. package/php/strings/str_shuffle.js.map +1 -1
  326. package/php/strings/str_split.js.map +1 -1
  327. package/php/strings/str_word_count.js.map +1 -1
  328. package/php/strings/strcasecmp.js.map +1 -1
  329. package/php/strings/strchr.js.map +1 -1
  330. package/php/strings/strcoll.js.map +1 -1
  331. package/php/strings/strip_tags.js.map +1 -1
  332. package/php/strings/stripos.js.map +1 -1
  333. package/php/strings/stristr.js.map +1 -1
  334. package/php/strings/strlen.js.map +1 -1
  335. package/php/strings/strnatcasecmp.js.map +1 -1
  336. package/php/strings/strnatcmp.js.map +1 -1
  337. package/php/strings/strncasecmp.js +1 -1
  338. package/php/strings/strncasecmp.js.map +1 -1
  339. package/php/strings/strncmp.js.map +1 -1
  340. package/php/strings/strpbrk.js.map +1 -1
  341. package/php/strings/strpos.js.map +1 -1
  342. package/php/strings/strrchr.js.map +1 -1
  343. package/php/strings/strrev.js.map +1 -1
  344. package/php/strings/strripos.js.map +1 -1
  345. package/php/strings/strrpos.js.map +1 -1
  346. package/php/strings/strspn.js +3 -3
  347. package/php/strings/strspn.js.map +1 -1
  348. package/php/strings/strstr.js.map +1 -1
  349. package/php/strings/strtok.js.map +1 -1
  350. package/php/strings/strtr.js.map +1 -1
  351. package/php/strings/substr.js.map +1 -1
  352. package/php/strings/substr_count.js.map +1 -1
  353. package/php/strings/trim.js.map +1 -1
  354. package/php/strings/ucfirst.js.map +1 -1
  355. package/php/strings/vprintf.js.map +1 -1
  356. package/php/strings/vsprintf.js.map +1 -1
  357. package/php/strings/wordwrap.js +4 -2
  358. package/php/strings/wordwrap.js.map +1 -1
  359. package/php/url/base64_decode.js +8 -8
  360. package/php/url/base64_decode.js.map +1 -1
  361. package/php/url/base64_encode.js +8 -8
  362. package/php/url/base64_encode.js.map +1 -1
  363. package/php/url/http_build_query.js +4 -4
  364. package/php/url/http_build_query.js.map +1 -1
  365. package/php/url/index.js +8 -8
  366. package/php/url/index.js.map +1 -1
  367. package/php/url/parse_url.js +1 -1
  368. package/php/url/parse_url.js.map +1 -1
  369. package/php/var/doubleval.js.map +1 -1
  370. package/php/var/empty.js +4 -4
  371. package/php/var/empty.js.map +1 -1
  372. package/php/var/gettype.js +1 -1
  373. package/php/var/gettype.js.map +1 -1
  374. package/php/var/index.js +30 -30
  375. package/php/var/index.js.map +1 -1
  376. package/php/var/intval.js +2 -1
  377. package/php/var/intval.js.map +1 -1
  378. package/php/var/is_array.js.map +1 -1
  379. package/php/var/is_callable.js.map +1 -1
  380. package/php/var/is_double.js.map +1 -1
  381. package/php/var/is_integer.js.map +1 -1
  382. package/php/var/is_long.js.map +1 -1
  383. package/php/var/is_numeric.js.map +1 -1
  384. package/php/var/is_real.js.map +1 -1
  385. package/php/var/is_unicode.js.map +1 -1
  386. package/php/var/isset.js +1 -1
  387. package/php/var/isset.js.map +1 -1
  388. package/php/var/print_r.js.map +1 -1
  389. package/php/var/serialize.js +7 -5
  390. package/php/var/serialize.js.map +1 -1
  391. package/php/var/strval.js.map +1 -1
  392. package/php/var/unserialize.js +422 -236
  393. package/php/var/unserialize.js.map +1 -1
  394. package/php/var/var_dump.js +3 -3
  395. package/php/var/var_dump.js.map +1 -1
  396. package/php/var/var_export.js +5 -5
  397. package/php/var/var_export.js.map +1 -1
  398. package/php/xdiff/index.js +2 -2
  399. package/php/xdiff/index.js.map +1 -1
  400. package/php/xdiff/xdiff_string_diff.js +30 -30
  401. package/php/xdiff/xdiff_string_diff.js.map +1 -1
  402. package/php/xdiff/xdiff_string_patch.js +7 -8
  403. package/php/xdiff/xdiff_string_patch.js.map +1 -1
  404. package/php/xml/index.js +2 -2
  405. package/php/xml/index.js.map +1 -1
  406. package/php/xml/utf8_decode.js.map +1 -1
  407. package/php/xml/utf8_encode.js +2 -2
  408. package/php/xml/utf8_encode.js.map +1 -1
  409. package/python/index.js +1 -1
  410. package/python/index.js.map +1 -1
  411. package/python/string/capwords.js.map +1 -1
  412. package/python/string/index.js +4 -4
  413. package/python/string/index.js.map +1 -1
  414. package/python/string/punctuation.js +10 -0
  415. package/python/string/punctuation.js.map +1 -0
  416. package/ruby/Math/index.js +1 -1
  417. package/ruby/Math/index.js.map +1 -1
  418. package/ruby/index.js +1 -1
  419. package/ruby/index.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/md5.js"],"names":["module","exports","md5","str","hash","crypto","require","md5sum","createHash","update","digest","e","undefined","utf8Encode","xl","_rotateLeft","lValue","iShiftBits","_addUnsigned","lX","lY","lX4","lY4","lX8","lY8","lResult","_F","x","y","z","_G","_H","_I","_FF","a","b","c","d","s","ac","_GG","_HH","_II","_convertToWordArray","lWordCount","lMessageLength","length","lNumberOfWordsTemp1","lNumberOfWordsTemp2","lNumberOfWords","lWordArray","Array","lBytePosition","lByteCount","charCodeAt","_wordToHex","wordToHexValue","wordToHexValueTemp","lByte","lCount","toString","substr","k","AA","BB","CC","DD","S11","S12","S13","S14","S21","S22","S23","S24","S31","S32","S33","S34","S41","S42","S43","S44","temp","toLowerCase"],"mappings":"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","file":"md5.js","sourcesContent":["module.exports = function md5 (str) {\n // discuss at: https://locutus.io/php/md5/\n // original by: Webtoolkit.info (https://www.webtoolkit.info/)\n // improved by: Michael White (https://getsprink.com)\n // improved by: Jack\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // input by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // note 1: Keep in mind that in accordance with PHP, the whole string is buffered and then\n // note 1: hashed. If available, we'd recommend using Node's native crypto modules directly\n // note 1: in a steaming fashion for faster and more efficient hashing\n // example 1: md5('Kevin van Zonneveld')\n // returns 1: '6e658d4bfcb59cc13f96c14450ac40b9'\n\n var hash\n try {\n var crypto = require('crypto')\n var md5sum = crypto.createHash('md5')\n md5sum.update(str)\n hash = md5sum.digest('hex')\n } catch (e) {\n hash = undefined\n }\n\n if (hash !== undefined) {\n return hash\n }\n\n var utf8Encode = require('../xml/utf8_encode')\n var xl\n\n var _rotateLeft = function (lValue, iShiftBits) {\n return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n }\n\n var _addUnsigned = function (lX, lY) {\n var lX4, lY4, lX8, lY8, lResult\n lX8 = (lX & 0x80000000)\n lY8 = (lY & 0x80000000)\n lX4 = (lX & 0x40000000)\n lY4 = (lY & 0x40000000)\n lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF)\n if (lX4 & lY4) {\n return (lResult ^ 0x80000000 ^ lX8 ^ lY8)\n }\n if (lX4 | lY4) {\n if (lResult & 0x40000000) {\n return (lResult ^ 0xC0000000 ^ lX8 ^ lY8)\n } else {\n return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n }\n } else {\n return (lResult ^ lX8 ^ lY8)\n }\n }\n\n var _F = function (x, y, z) {\n return (x & y) | ((~x) & z)\n }\n var _G = function (x, y, z) {\n return (x & z) | (y & (~z))\n }\n var _H = function (x, y, z) {\n return (x ^ y ^ z)\n }\n var _I = function (x, y, z) {\n return (y ^ (x | (~z)))\n }\n\n var _FF = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_F(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n var _GG = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_G(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n var _HH = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_H(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n var _II = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_I(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n var _convertToWordArray = function (str) {\n var lWordCount\n var lMessageLength = str.length\n var lNumberOfWordsTemp1 = lMessageLength + 8\n var lNumberOfWordsTemp2 = (lNumberOfWordsTemp1 - (lNumberOfWordsTemp1 % 64)) / 64\n var lNumberOfWords = (lNumberOfWordsTemp2 + 1) * 16\n var lWordArray = new Array(lNumberOfWords - 1)\n var lBytePosition = 0\n var lByteCount = 0\n while (lByteCount < lMessageLength) {\n lWordCount = (lByteCount - (lByteCount % 4)) / 4\n lBytePosition = (lByteCount % 4) * 8\n lWordArray[lWordCount] = (lWordArray[lWordCount] |\n (str.charCodeAt(lByteCount) << lBytePosition))\n lByteCount++\n }\n lWordCount = (lByteCount - (lByteCount % 4)) / 4\n lBytePosition = (lByteCount % 4) * 8\n lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition)\n lWordArray[lNumberOfWords - 2] = lMessageLength << 3\n lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29\n return lWordArray\n }\n\n var _wordToHex = function (lValue) {\n var wordToHexValue = ''\n var wordToHexValueTemp = ''\n var lByte\n var lCount\n\n for (lCount = 0; lCount <= 3; lCount++) {\n lByte = (lValue >>> (lCount * 8)) & 255\n wordToHexValueTemp = '0' + lByte.toString(16)\n wordToHexValue = wordToHexValue + wordToHexValueTemp.substr(wordToHexValueTemp.length - 2, 2)\n }\n return wordToHexValue\n }\n\n var x = []\n var k\n var AA\n var BB\n var CC\n var DD\n var a\n var b\n var c\n var d\n var S11 = 7\n var S12 = 12\n var S13 = 17\n var S14 = 22\n var S21 = 5\n var S22 = 9\n var S23 = 14\n var S24 = 20\n var S31 = 4\n var S32 = 11\n var S33 = 16\n var S34 = 23\n var S41 = 6\n var S42 = 10\n var S43 = 15\n var S44 = 21\n\n str = utf8Encode(str)\n x = _convertToWordArray(str)\n a = 0x67452301\n b = 0xEFCDAB89\n c = 0x98BADCFE\n d = 0x10325476\n\n xl = x.length\n for (k = 0; k < xl; k += 16) {\n AA = a\n BB = b\n CC = c\n DD = d\n a = _FF(a, b, c, d, x[k + 0], S11, 0xD76AA478)\n d = _FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756)\n c = _FF(c, d, a, b, x[k + 2], S13, 0x242070DB)\n b = _FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE)\n a = _FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF)\n d = _FF(d, a, b, c, x[k + 5], S12, 0x4787C62A)\n c = _FF(c, d, a, b, x[k + 6], S13, 0xA8304613)\n b = _FF(b, c, d, a, x[k + 7], S14, 0xFD469501)\n a = _FF(a, b, c, d, x[k + 8], S11, 0x698098D8)\n d = _FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF)\n c = _FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1)\n b = _FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE)\n a = _FF(a, b, c, d, x[k + 12], S11, 0x6B901122)\n d = _FF(d, a, b, c, x[k + 13], S12, 0xFD987193)\n c = _FF(c, d, a, b, x[k + 14], S13, 0xA679438E)\n b = _FF(b, c, d, a, x[k + 15], S14, 0x49B40821)\n a = _GG(a, b, c, d, x[k + 1], S21, 0xF61E2562)\n d = _GG(d, a, b, c, x[k + 6], S22, 0xC040B340)\n c = _GG(c, d, a, b, x[k + 11], S23, 0x265E5A51)\n b = _GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA)\n a = _GG(a, b, c, d, x[k + 5], S21, 0xD62F105D)\n d = _GG(d, a, b, c, x[k + 10], S22, 0x2441453)\n c = _GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681)\n b = _GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8)\n a = _GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6)\n d = _GG(d, a, b, c, x[k + 14], S22, 0xC33707D6)\n c = _GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87)\n b = _GG(b, c, d, a, x[k + 8], S24, 0x455A14ED)\n a = _GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905)\n d = _GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8)\n c = _GG(c, d, a, b, x[k + 7], S23, 0x676F02D9)\n b = _GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A)\n a = _HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942)\n d = _HH(d, a, b, c, x[k + 8], S32, 0x8771F681)\n c = _HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122)\n b = _HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C)\n a = _HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44)\n d = _HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9)\n c = _HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60)\n b = _HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70)\n a = _HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6)\n d = _HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA)\n c = _HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085)\n b = _HH(b, c, d, a, x[k + 6], S34, 0x4881D05)\n a = _HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039)\n d = _HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5)\n c = _HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8)\n b = _HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665)\n a = _II(a, b, c, d, x[k + 0], S41, 0xF4292244)\n d = _II(d, a, b, c, x[k + 7], S42, 0x432AFF97)\n c = _II(c, d, a, b, x[k + 14], S43, 0xAB9423A7)\n b = _II(b, c, d, a, x[k + 5], S44, 0xFC93A039)\n a = _II(a, b, c, d, x[k + 12], S41, 0x655B59C3)\n d = _II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92)\n c = _II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D)\n b = _II(b, c, d, a, x[k + 1], S44, 0x85845DD1)\n a = _II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F)\n d = _II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0)\n c = _II(c, d, a, b, x[k + 6], S43, 0xA3014314)\n b = _II(b, c, d, a, x[k + 13], S44, 0x4E0811A1)\n a = _II(a, b, c, d, x[k + 4], S41, 0xF7537E82)\n d = _II(d, a, b, c, x[k + 11], S42, 0xBD3AF235)\n c = _II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB)\n b = _II(b, c, d, a, x[k + 9], S44, 0xEB86D391)\n a = _addUnsigned(a, AA)\n b = _addUnsigned(b, BB)\n c = _addUnsigned(c, CC)\n d = _addUnsigned(d, DD)\n }\n\n var temp = _wordToHex(a) + _wordToHex(b) + _wordToHex(c) + _wordToHex(d)\n\n return temp.toLowerCase()\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/md5.js"],"names":["module","exports","md5","str","hash","crypto","require","md5sum","createHash","update","digest","e","undefined","utf8Encode","xl","_rotateLeft","lValue","iShiftBits","_addUnsigned","lX","lY","lX4","lY4","lX8","lY8","lResult","_F","x","y","z","_G","_H","_I","_FF","a","b","c","d","s","ac","_GG","_HH","_II","_convertToWordArray","lWordCount","lMessageLength","length","lNumberOfWordsTemp1","lNumberOfWordsTemp2","lNumberOfWords","lWordArray","Array","lBytePosition","lByteCount","charCodeAt","_wordToHex","wordToHexValue","wordToHexValueTemp","lByte","lCount","toString","substr","k","AA","BB","CC","DD","S11","S12","S13","S14","S21","S22","S23","S24","S31","S32","S33","S34","S41","S42","S43","S44","temp","toLowerCase"],"mappings":"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","file":"md5.js","sourcesContent":["module.exports = function md5 (str) {\n // discuss at: https://locutus.io/php/md5/\n // original by: Webtoolkit.info (https://www.webtoolkit.info/)\n // improved by: Michael White (https://getsprink.com)\n // improved by: Jack\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // input by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // note 1: Keep in mind that in accordance with PHP, the whole string is buffered and then\n // note 1: hashed. If available, we'd recommend using Node's native crypto modules directly\n // note 1: in a steaming fashion for faster and more efficient hashing\n // example 1: md5('Kevin van Zonneveld')\n // returns 1: '6e658d4bfcb59cc13f96c14450ac40b9'\n\n let hash\n try {\n const crypto = require('crypto')\n const md5sum = crypto.createHash('md5')\n md5sum.update(str)\n hash = md5sum.digest('hex')\n } catch (e) {\n hash = undefined\n }\n\n if (hash !== undefined) {\n return hash\n }\n\n const utf8Encode = require('../xml/utf8_encode')\n let xl\n\n const _rotateLeft = function (lValue, iShiftBits) {\n return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))\n }\n\n const _addUnsigned = function (lX, lY) {\n let lX4, lY4, lX8, lY8, lResult\n lX8 = (lX & 0x80000000)\n lY8 = (lY & 0x80000000)\n lX4 = (lX & 0x40000000)\n lY4 = (lY & 0x40000000)\n lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF)\n if (lX4 & lY4) {\n return (lResult ^ 0x80000000 ^ lX8 ^ lY8)\n }\n if (lX4 | lY4) {\n if (lResult & 0x40000000) {\n return (lResult ^ 0xC0000000 ^ lX8 ^ lY8)\n } else {\n return (lResult ^ 0x40000000 ^ lX8 ^ lY8)\n }\n } else {\n return (lResult ^ lX8 ^ lY8)\n }\n }\n\n const _F = function (x, y, z) {\n return (x & y) | ((~x) & z)\n }\n const _G = function (x, y, z) {\n return (x & z) | (y & (~z))\n }\n const _H = function (x, y, z) {\n return (x ^ y ^ z)\n }\n const _I = function (x, y, z) {\n return (y ^ (x | (~z)))\n }\n\n const _FF = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_F(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n const _GG = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_G(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n const _HH = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_H(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n const _II = function (a, b, c, d, x, s, ac) {\n a = _addUnsigned(a, _addUnsigned(_addUnsigned(_I(b, c, d), x), ac))\n return _addUnsigned(_rotateLeft(a, s), b)\n }\n\n const _convertToWordArray = function (str) {\n let lWordCount\n const lMessageLength = str.length\n const lNumberOfWordsTemp1 = lMessageLength + 8\n const lNumberOfWordsTemp2 = (lNumberOfWordsTemp1 - (lNumberOfWordsTemp1 % 64)) / 64\n const lNumberOfWords = (lNumberOfWordsTemp2 + 1) * 16\n const lWordArray = new Array(lNumberOfWords - 1)\n let lBytePosition = 0\n let lByteCount = 0\n while (lByteCount < lMessageLength) {\n lWordCount = (lByteCount - (lByteCount % 4)) / 4\n lBytePosition = (lByteCount % 4) * 8\n lWordArray[lWordCount] = (lWordArray[lWordCount] |\n (str.charCodeAt(lByteCount) << lBytePosition))\n lByteCount++\n }\n lWordCount = (lByteCount - (lByteCount % 4)) / 4\n lBytePosition = (lByteCount % 4) * 8\n lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition)\n lWordArray[lNumberOfWords - 2] = lMessageLength << 3\n lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29\n return lWordArray\n }\n\n const _wordToHex = function (lValue) {\n let wordToHexValue = ''\n let wordToHexValueTemp = ''\n let lByte\n let lCount\n\n for (lCount = 0; lCount <= 3; lCount++) {\n lByte = (lValue >>> (lCount * 8)) & 255\n wordToHexValueTemp = '0' + lByte.toString(16)\n wordToHexValue = wordToHexValue + wordToHexValueTemp.substr(wordToHexValueTemp.length - 2, 2)\n }\n return wordToHexValue\n }\n\n let x = []\n let k\n let AA\n let BB\n let CC\n let DD\n let a\n let b\n let c\n let d\n const S11 = 7\n const S12 = 12\n const S13 = 17\n const S14 = 22\n const S21 = 5\n const S22 = 9\n const S23 = 14\n const S24 = 20\n const S31 = 4\n const S32 = 11\n const S33 = 16\n const S34 = 23\n const S41 = 6\n const S42 = 10\n const S43 = 15\n const S44 = 21\n\n str = utf8Encode(str)\n x = _convertToWordArray(str)\n a = 0x67452301\n b = 0xEFCDAB89\n c = 0x98BADCFE\n d = 0x10325476\n\n xl = x.length\n for (k = 0; k < xl; k += 16) {\n AA = a\n BB = b\n CC = c\n DD = d\n a = _FF(a, b, c, d, x[k + 0], S11, 0xD76AA478)\n d = _FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756)\n c = _FF(c, d, a, b, x[k + 2], S13, 0x242070DB)\n b = _FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE)\n a = _FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF)\n d = _FF(d, a, b, c, x[k + 5], S12, 0x4787C62A)\n c = _FF(c, d, a, b, x[k + 6], S13, 0xA8304613)\n b = _FF(b, c, d, a, x[k + 7], S14, 0xFD469501)\n a = _FF(a, b, c, d, x[k + 8], S11, 0x698098D8)\n d = _FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF)\n c = _FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1)\n b = _FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE)\n a = _FF(a, b, c, d, x[k + 12], S11, 0x6B901122)\n d = _FF(d, a, b, c, x[k + 13], S12, 0xFD987193)\n c = _FF(c, d, a, b, x[k + 14], S13, 0xA679438E)\n b = _FF(b, c, d, a, x[k + 15], S14, 0x49B40821)\n a = _GG(a, b, c, d, x[k + 1], S21, 0xF61E2562)\n d = _GG(d, a, b, c, x[k + 6], S22, 0xC040B340)\n c = _GG(c, d, a, b, x[k + 11], S23, 0x265E5A51)\n b = _GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA)\n a = _GG(a, b, c, d, x[k + 5], S21, 0xD62F105D)\n d = _GG(d, a, b, c, x[k + 10], S22, 0x2441453)\n c = _GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681)\n b = _GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8)\n a = _GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6)\n d = _GG(d, a, b, c, x[k + 14], S22, 0xC33707D6)\n c = _GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87)\n b = _GG(b, c, d, a, x[k + 8], S24, 0x455A14ED)\n a = _GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905)\n d = _GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8)\n c = _GG(c, d, a, b, x[k + 7], S23, 0x676F02D9)\n b = _GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A)\n a = _HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942)\n d = _HH(d, a, b, c, x[k + 8], S32, 0x8771F681)\n c = _HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122)\n b = _HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C)\n a = _HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44)\n d = _HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9)\n c = _HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60)\n b = _HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70)\n a = _HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6)\n d = _HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA)\n c = _HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085)\n b = _HH(b, c, d, a, x[k + 6], S34, 0x4881D05)\n a = _HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039)\n d = _HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5)\n c = _HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8)\n b = _HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665)\n a = _II(a, b, c, d, x[k + 0], S41, 0xF4292244)\n d = _II(d, a, b, c, x[k + 7], S42, 0x432AFF97)\n c = _II(c, d, a, b, x[k + 14], S43, 0xAB9423A7)\n b = _II(b, c, d, a, x[k + 5], S44, 0xFC93A039)\n a = _II(a, b, c, d, x[k + 12], S41, 0x655B59C3)\n d = _II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92)\n c = _II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D)\n b = _II(b, c, d, a, x[k + 1], S44, 0x85845DD1)\n a = _II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F)\n d = _II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0)\n c = _II(c, d, a, b, x[k + 6], S43, 0xA3014314)\n b = _II(b, c, d, a, x[k + 13], S44, 0x4E0811A1)\n a = _II(a, b, c, d, x[k + 4], S41, 0xF7537E82)\n d = _II(d, a, b, c, x[k + 11], S42, 0xBD3AF235)\n c = _II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB)\n b = _II(b, c, d, a, x[k + 9], S44, 0xEB86D391)\n a = _addUnsigned(a, AA)\n b = _addUnsigned(b, BB)\n c = _addUnsigned(c, CC)\n d = _addUnsigned(d, DD)\n }\n\n const temp = _wordToHex(a) + _wordToHex(b) + _wordToHex(c) + _wordToHex(d)\n\n return temp.toLowerCase()\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/md5_file.js"],"names":["module","exports","md5_file","str_filename","fileGetContents","require","md5","buf"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,QAAT,CAAmBC,YAAnB,EAAiC;AAAE;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,kBAAkBC,QAAQ,iCAAR,CAAtB;AACA,MAAIC,MAAMD,QAAQ,gBAAR,CAAV;AACA,MAAIE,MAAMH,gBAAgBD,YAAhB,CAAV;;AAEA,MAAII,QAAQ,KAAZ,EAAmB;AACjB,WAAO,KAAP;AACD;;AAED,SAAOD,IAAIC,GAAJ,CAAP;AACD,CArBD","file":"md5_file.js","sourcesContent":["module.exports = function md5_file (str_filename) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/md5_file/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // input by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // note 1: Relies on file_get_contents which does not work in the browser, so Node only.\n // note 2: Keep in mind that in accordance with PHP, the whole file is buffered and then\n // note 2: hashed. We'd recommend Node's native crypto modules for faster and more\n // note 2: efficient hashing\n // example 1: md5_file('test/never-change.txt')\n // returns 1: 'bc3aa724b0ec7dce4c26e7f4d0d9b064'\n\n var fileGetContents = require('../filesystem/file_get_contents')\n var md5 = require('../strings/md5')\n var buf = fileGetContents(str_filename)\n\n if (buf === false) {\n return false\n }\n\n return md5(buf)\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/md5_file.js"],"names":["module","exports","md5_file","str_filename","fileGetContents","require","md5","buf"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,QAAT,CAAmBC,YAAnB,EAAiC;AAAE;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,kBAAkBC,QAAQ,iCAAR,CAAxB;AACA,MAAMC,MAAMD,QAAQ,gBAAR,CAAZ;AACA,MAAME,MAAMH,gBAAgBD,YAAhB,CAAZ;;AAEA,MAAII,QAAQ,KAAZ,EAAmB;AACjB,WAAO,KAAP;AACD;;AAED,SAAOD,IAAIC,GAAJ,CAAP;AACD,CArBD","file":"md5_file.js","sourcesContent":["module.exports = function md5_file (str_filename) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/md5_file/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // input by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // note 1: Relies on file_get_contents which does not work in the browser, so Node only.\n // note 2: Keep in mind that in accordance with PHP, the whole file is buffered and then\n // note 2: hashed. We'd recommend Node's native crypto modules for faster and more\n // note 2: efficient hashing\n // example 1: md5_file('test/never-change.txt')\n // returns 1: 'bc3aa724b0ec7dce4c26e7f4d0d9b064'\n\n const fileGetContents = require('../filesystem/file_get_contents')\n const md5 = require('../strings/md5')\n const buf = fileGetContents(str_filename)\n\n if (buf === false) {\n return false\n }\n\n return md5(buf)\n}\n"]}
@@ -60,8 +60,8 @@ module.exports = function metaphone(word, maxPhonemes) {
60
60
  var i = 0;
61
61
  var cc = word.charAt(0); // current char. Short name because it's used all over the function
62
62
  var nc = word.charAt(1); // next char
63
- var nnc; // after next char
64
- var pc; // previous char
63
+ var nnc = void 0; // after next char
64
+ var pc = void 0; // previous char
65
65
  var l = word.length;
66
66
  var meta = '';
67
67
  // traditional is an internal param that could be exposed for now let it be a local var
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/metaphone.js"],"names":["module","exports","metaphone","word","maxPhonemes","type","isNaN","isFinite","Math","floor","alpha","vowel","soft","leadingNonAlpha","RegExp","toUpperCase","replace","is","p","c","indexOf","i","cc","charAt","nc","nnc","pc","l","length","meta","traditional","substr"],"mappings":"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","file":"metaphone.js","sourcesContent":["module.exports = function metaphone (word, maxPhonemes) {\n // discuss at: https://locutus.io/php/metaphone/\n // original by: Greg Frazier\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Rafał Kukawski (https://blog.kukawski.pl)\n // example 1: metaphone('Gnu')\n // returns 1: 'N'\n // example 2: metaphone('bigger')\n // returns 2: 'BKR'\n // example 3: metaphone('accuracy')\n // returns 3: 'AKKRS'\n // example 4: metaphone('batch batcher')\n // returns 4: 'BXBXR'\n\n var type = typeof word\n\n if (type === 'undefined' || type === 'object' && word !== null) {\n // weird!\n return null\n }\n\n // infinity and NaN values are treated as strings\n if (type === 'number') {\n if (isNaN(word)) {\n word = 'NAN'\n } else if (!isFinite(word)) {\n word = 'INF'\n }\n }\n\n if (maxPhonemes < 0) {\n return false\n }\n\n maxPhonemes = Math.floor(+maxPhonemes) || 0\n\n // alpha depends on locale, so this var might need an update\n // or should be turned into a regex\n // for now assuming pure a-z\n var alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n var vowel = 'AEIOU'\n var soft = 'EIY'\n var leadingNonAlpha = new RegExp('^[^' + alpha + ']+')\n\n word = typeof word === 'string' ? word : ''\n word = word.toUpperCase().replace(leadingNonAlpha, '')\n\n if (!word) {\n return ''\n }\n\n var is = function (p, c) {\n return c !== '' && p.indexOf(c) !== -1\n }\n\n var i = 0\n var cc = word.charAt(0) // current char. Short name because it's used all over the function\n var nc = word.charAt(1) // next char\n var nnc // after next char\n var pc // previous char\n var l = word.length\n var meta = ''\n // traditional is an internal param that could be exposed for now let it be a local var\n var traditional = true\n\n switch (cc) {\n case 'A':\n meta += nc === 'E' ? nc : cc\n i += 1\n break\n case 'G':\n case 'K':\n case 'P':\n if (nc === 'N') {\n meta += nc\n i += 2\n }\n break\n case 'W':\n if (nc === 'R') {\n meta += nc\n i += 2\n } else if (nc === 'H' || is(vowel, nc)) {\n meta += 'W'\n i += 2\n }\n break\n case 'X':\n meta += 'S'\n i += 1\n break\n case 'E':\n case 'I':\n case 'O':\n case 'U':\n meta += cc\n i++\n break\n }\n\n for (; i < l && (maxPhonemes === 0 || meta.length < maxPhonemes); i += 1) { // eslint-disable-line no-unmodified-loop-condition,max-len\n cc = word.charAt(i)\n nc = word.charAt(i + 1)\n pc = word.charAt(i - 1)\n nnc = word.charAt(i + 2)\n\n if (cc === pc && cc !== 'C') {\n continue\n }\n\n switch (cc) {\n case 'B':\n if (pc !== 'M') {\n meta += cc\n }\n break\n case 'C':\n if (is(soft, nc)) {\n if (nc === 'I' && nnc === 'A') {\n meta += 'X'\n } else if (pc !== 'S') {\n meta += 'S'\n }\n } else if (nc === 'H') {\n meta += !traditional && (nnc === 'R' || pc === 'S') ? 'K' : 'X'\n i += 1\n } else {\n meta += 'K'\n }\n break\n case 'D':\n if (nc === 'G' && is(soft, nnc)) {\n meta += 'J'\n i += 1\n } else {\n meta += 'T'\n }\n break\n case 'G':\n if (nc === 'H') {\n if (!(is('BDH', word.charAt(i - 3)) || word.charAt(i - 4) === 'H')) {\n meta += 'F'\n i += 1\n }\n } else if (nc === 'N') {\n if (is(alpha, nnc) && word.substr(i + 1, 3) !== 'NED') {\n meta += 'K'\n }\n } else if (is(soft, nc) && pc !== 'G') {\n meta += 'J'\n } else {\n meta += 'K'\n }\n break\n case 'H':\n if (is(vowel, nc) && !is('CGPST', pc)) {\n meta += cc\n }\n break\n case 'K':\n if (pc !== 'C') {\n meta += 'K'\n }\n break\n case 'P':\n meta += nc === 'H' ? 'F' : cc\n break\n case 'Q':\n meta += 'K'\n break\n case 'S':\n if (nc === 'I' && is('AO', nnc)) {\n meta += 'X'\n } else if (nc === 'H') {\n meta += 'X'\n i += 1\n } else if (!traditional && word.substr(i + 1, 3) === 'CHW') {\n meta += 'X'\n i += 2\n } else {\n meta += 'S'\n }\n break\n case 'T':\n if (nc === 'I' && is('AO', nnc)) {\n meta += 'X'\n } else if (nc === 'H') {\n meta += '0'\n i += 1\n } else if (word.substr(i + 1, 2) !== 'CH') {\n meta += 'T'\n }\n break\n case 'V':\n meta += 'F'\n break\n case 'W':\n case 'Y':\n if (is(vowel, nc)) {\n meta += cc\n }\n break\n case 'X':\n meta += 'KS'\n break\n case 'Z':\n meta += 'S'\n break\n case 'F':\n case 'J':\n case 'L':\n case 'M':\n case 'N':\n case 'R':\n meta += cc\n break\n }\n }\n\n return meta\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/metaphone.js"],"names":["module","exports","metaphone","word","maxPhonemes","type","isNaN","isFinite","Math","floor","alpha","vowel","soft","leadingNonAlpha","RegExp","toUpperCase","replace","is","p","c","indexOf","i","cc","charAt","nc","nnc","pc","l","length","meta","traditional","substr"],"mappings":"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","file":"metaphone.js","sourcesContent":["module.exports = function metaphone (word, maxPhonemes) {\n // discuss at: https://locutus.io/php/metaphone/\n // original by: Greg Frazier\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Rafał Kukawski (https://blog.kukawski.pl)\n // example 1: metaphone('Gnu')\n // returns 1: 'N'\n // example 2: metaphone('bigger')\n // returns 2: 'BKR'\n // example 3: metaphone('accuracy')\n // returns 3: 'AKKRS'\n // example 4: metaphone('batch batcher')\n // returns 4: 'BXBXR'\n\n const type = typeof word\n\n if (type === 'undefined' || type === 'object' && word !== null) {\n // weird!\n return null\n }\n\n // infinity and NaN values are treated as strings\n if (type === 'number') {\n if (isNaN(word)) {\n word = 'NAN'\n } else if (!isFinite(word)) {\n word = 'INF'\n }\n }\n\n if (maxPhonemes < 0) {\n return false\n }\n\n maxPhonemes = Math.floor(+maxPhonemes) || 0\n\n // alpha depends on locale, so this var might need an update\n // or should be turned into a regex\n // for now assuming pure a-z\n const alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n const vowel = 'AEIOU'\n const soft = 'EIY'\n const leadingNonAlpha = new RegExp('^[^' + alpha + ']+')\n\n word = typeof word === 'string' ? word : ''\n word = word.toUpperCase().replace(leadingNonAlpha, '')\n\n if (!word) {\n return ''\n }\n\n const is = function (p, c) {\n return c !== '' && p.indexOf(c) !== -1\n }\n\n let i = 0\n let cc = word.charAt(0) // current char. Short name because it's used all over the function\n let nc = word.charAt(1) // next char\n let nnc // after next char\n let pc // previous char\n const l = word.length\n let meta = ''\n // traditional is an internal param that could be exposed for now let it be a local var\n const traditional = true\n\n switch (cc) {\n case 'A':\n meta += nc === 'E' ? nc : cc\n i += 1\n break\n case 'G':\n case 'K':\n case 'P':\n if (nc === 'N') {\n meta += nc\n i += 2\n }\n break\n case 'W':\n if (nc === 'R') {\n meta += nc\n i += 2\n } else if (nc === 'H' || is(vowel, nc)) {\n meta += 'W'\n i += 2\n }\n break\n case 'X':\n meta += 'S'\n i += 1\n break\n case 'E':\n case 'I':\n case 'O':\n case 'U':\n meta += cc\n i++\n break\n }\n\n for (; i < l && (maxPhonemes === 0 || meta.length < maxPhonemes); i += 1) { // eslint-disable-line no-unmodified-loop-condition,max-len\n cc = word.charAt(i)\n nc = word.charAt(i + 1)\n pc = word.charAt(i - 1)\n nnc = word.charAt(i + 2)\n\n if (cc === pc && cc !== 'C') {\n continue\n }\n\n switch (cc) {\n case 'B':\n if (pc !== 'M') {\n meta += cc\n }\n break\n case 'C':\n if (is(soft, nc)) {\n if (nc === 'I' && nnc === 'A') {\n meta += 'X'\n } else if (pc !== 'S') {\n meta += 'S'\n }\n } else if (nc === 'H') {\n meta += !traditional && (nnc === 'R' || pc === 'S') ? 'K' : 'X'\n i += 1\n } else {\n meta += 'K'\n }\n break\n case 'D':\n if (nc === 'G' && is(soft, nnc)) {\n meta += 'J'\n i += 1\n } else {\n meta += 'T'\n }\n break\n case 'G':\n if (nc === 'H') {\n if (!(is('BDH', word.charAt(i - 3)) || word.charAt(i - 4) === 'H')) {\n meta += 'F'\n i += 1\n }\n } else if (nc === 'N') {\n if (is(alpha, nnc) && word.substr(i + 1, 3) !== 'NED') {\n meta += 'K'\n }\n } else if (is(soft, nc) && pc !== 'G') {\n meta += 'J'\n } else {\n meta += 'K'\n }\n break\n case 'H':\n if (is(vowel, nc) && !is('CGPST', pc)) {\n meta += cc\n }\n break\n case 'K':\n if (pc !== 'C') {\n meta += 'K'\n }\n break\n case 'P':\n meta += nc === 'H' ? 'F' : cc\n break\n case 'Q':\n meta += 'K'\n break\n case 'S':\n if (nc === 'I' && is('AO', nnc)) {\n meta += 'X'\n } else if (nc === 'H') {\n meta += 'X'\n i += 1\n } else if (!traditional && word.substr(i + 1, 3) === 'CHW') {\n meta += 'X'\n i += 2\n } else {\n meta += 'S'\n }\n break\n case 'T':\n if (nc === 'I' && is('AO', nnc)) {\n meta += 'X'\n } else if (nc === 'H') {\n meta += '0'\n i += 1\n } else if (word.substr(i + 1, 2) !== 'CH') {\n meta += 'T'\n }\n break\n case 'V':\n meta += 'F'\n break\n case 'W':\n case 'Y':\n if (is(vowel, nc)) {\n meta += cc\n }\n break\n case 'X':\n meta += 'KS'\n break\n case 'Z':\n meta += 'S'\n break\n case 'F':\n case 'J':\n case 'L':\n case 'M':\n case 'N':\n case 'R':\n meta += cc\n break\n }\n }\n\n return meta\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/money_format.js"],"names":["module","exports","money_format","format","number","setlocale","require","regex","$global","window","global","$locutus","php","monetary","locales","localeCategories","LC_MONETARY","doReplace","n0","flags","n2","width","n4","left","n6","right","conversion","value","repl","fill","test","match","showCurrSymbol","indexOf","parseInt","neg","slice","decpos","integer","fraction","_strSplice","integerStr","idx","thouSep","integerArr","split","splice","join","intLen","length","filler","fillnum","Array","mon_thousands_sep","monGrouping","mon_grouping","i","decPt","mon_decimal_point","undefined","int_frac_digits","frac_digits","Math","round","parseFloat","substr","symbol","int_curr_symbol","currency_symbol","signPosn","n_sign_posn","p_sign_posn","sepBySpace","n_sep_by_space","p_sep_by_space","csPrecedes","n_cs_precedes","p_cs_precedes","posSign","positive_sign","negSign","negative_sign","sign","otherSign","signPadding","valueAndCS","padding","replace"],"mappings":"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","file":"money_format.js","sourcesContent":["module.exports = function money_format (format, number) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/money_format/\n // original by: Brett Zamir (https://brett-zamir.me)\n // input by: daniel airton wermann (https://wermann.com.br)\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // note 1: This depends on setlocale having the appropriate\n // note 1: locale (these examples use 'en_US')\n // example 1: money_format('%i', 1234.56)\n // returns 1: ' USD 1,234.56'\n // example 2: money_format('%14#8.2n', 1234.5678)\n // returns 2: ' $ 1,234.57'\n // example 3: money_format('%14#8.2n', -1234.5678)\n // returns 3: '-$ 1,234.57'\n // example 4: money_format('%(14#8.2n', 1234.5678)\n // returns 4: ' $ 1,234.57 '\n // example 5: money_format('%(14#8.2n', -1234.5678)\n // returns 5: '($ 1,234.57)'\n // example 6: money_format('%=014#8.2n', 1234.5678)\n // returns 6: ' $000001,234.57'\n // example 7: money_format('%=014#8.2n', -1234.5678)\n // returns 7: '-$000001,234.57'\n // example 8: money_format('%=*14#8.2n', 1234.5678)\n // returns 8: ' $*****1,234.57'\n // example 9: money_format('%=*14#8.2n', -1234.5678)\n // returns 9: '-$*****1,234.57'\n // example 10: money_format('%=*^14#8.2n', 1234.5678)\n // returns 10: ' $****1234.57'\n // example 11: money_format('%=*^14#8.2n', -1234.5678)\n // returns 11: ' -$****1234.57'\n // example 12: money_format('%=*!14#8.2n', 1234.5678)\n // returns 12: ' *****1,234.57'\n // example 13: money_format('%=*!14#8.2n', -1234.5678)\n // returns 13: '-*****1,234.57'\n // example 14: money_format('%i', 3590)\n // returns 14: ' USD 3,590.00'\n\n var setlocale = require('../strings/setlocale')\n\n // Per PHP behavior, there seems to be no extra padding\n // for sign when there is a positive number, though my\n // understanding of the description is that there should be padding;\n // need to revisit examples\n\n // Helpful info at https://ftp.gnu.org/pub/pub/old-gnu/Manuals/glibc-2.2.3/html_chapter/libc_7.html\n // and https://publib.boulder.ibm.com/infocenter/zos/v1r10/index.jsp?topic=/com.ibm.zos.r10.bpxbd00/strfmp.htm\n\n if (typeof number !== 'number') {\n return null\n }\n // 1: flags, 3: width, 5: left, 7: right, 8: conversion\n var regex = /%((=.|[+^(!-])*?)(\\d*?)(#(\\d+))?(\\.(\\d+))?([in%])/g\n\n // Ensure the locale data we need is set up\n setlocale('LC_ALL', 0)\n\n var $global = (typeof window !== 'undefined' ? window : global)\n $global.$locutus = $global.$locutus || {}\n var $locutus = $global.$locutus\n $locutus.php = $locutus.php || {}\n\n var monetary = $locutus.php.locales[$locutus.php.localeCategories.LC_MONETARY].LC_MONETARY\n\n var doReplace = function (n0, flags, n2, width, n4, left, n6, right, conversion) {\n var value = ''\n var repl = ''\n if (conversion === '%') {\n // Percent does not seem to be allowed with intervening content\n return '%'\n }\n var fill = flags && (/=./).test(flags) ? flags.match(/=(.)/)[1] : ' ' // flag: =f (numeric fill)\n // flag: ! (suppress currency symbol)\n var showCurrSymbol = !flags || flags.indexOf('!') === -1\n // field width: w (minimum field width)\n width = parseInt(width, 10) || 0\n\n var neg = number < 0\n // Convert to string\n number = number + ''\n // We don't want negative symbol represented here yet\n number = neg ? number.slice(1) : number\n\n var decpos = number.indexOf('.')\n // Get integer portion\n var integer = decpos !== -1 ? number.slice(0, decpos) : number\n // Get decimal portion\n var fraction = decpos !== -1 ? number.slice(decpos + 1) : ''\n\n var _strSplice = function (integerStr, idx, thouSep) {\n var integerArr = integerStr.split('')\n integerArr.splice(idx, 0, thouSep)\n return integerArr.join('')\n }\n\n var intLen = integer.length\n left = parseInt(left, 10)\n var filler = intLen < left\n if (filler) {\n var fillnum = left - intLen\n integer = new Array(fillnum + 1).join(fill) + integer\n }\n if (flags.indexOf('^') === -1) {\n // flag: ^ (disable grouping characters (of locale))\n // use grouping characters\n // ','\n var thouSep = monetary.mon_thousands_sep\n // [3] (every 3 digits in U.S.A. locale)\n var monGrouping = monetary.mon_grouping\n\n if (monGrouping[0] < integer.length) {\n for (var i = 0, idx = integer.length; i < monGrouping.length; i++) {\n // e.g., 3\n idx -= monGrouping[i]\n if (idx <= 0) {\n break\n }\n if (filler && idx < fillnum) {\n thouSep = fill\n }\n integer = _strSplice(integer, idx, thouSep)\n }\n }\n if (monGrouping[i - 1] > 0) {\n // Repeating last grouping (may only be one) until highest portion of integer reached\n while (idx > monGrouping[i - 1]) {\n idx -= monGrouping[i - 1]\n if (filler && idx < fillnum) {\n thouSep = fill\n }\n integer = _strSplice(integer, idx, thouSep)\n }\n }\n }\n\n // left, right\n if (right === '0') {\n // No decimal or fractional digits\n value = integer\n } else {\n // '.'\n var decPt = monetary.mon_decimal_point\n if (right === '' || right === undefined) {\n right = conversion === 'i' ? monetary.int_frac_digits : monetary.frac_digits\n }\n right = parseInt(right, 10)\n\n if (right === 0) {\n // Only remove fractional portion if explicitly set to zero digits\n fraction = ''\n decPt = ''\n } else if (right < fraction.length) {\n fraction = Math.round(parseFloat(\n fraction.slice(0, right) + '.' + fraction.substr(right, 1)\n ))\n if (right > fraction.length) {\n fraction = new Array(right - fraction.length + 1).join('0') + fraction // prepend with 0's\n }\n } else if (right > fraction.length) {\n fraction += new Array(right - fraction.length + 1).join('0') // pad with 0's\n }\n value = integer + decPt + fraction\n }\n\n var symbol = ''\n if (showCurrSymbol) {\n // 'i' vs. 'n' ('USD' vs. '$')\n symbol = conversion === 'i' ? monetary.int_curr_symbol : monetary.currency_symbol\n }\n var signPosn = neg ? monetary.n_sign_posn : monetary.p_sign_posn\n\n // 0: no space between curr. symbol and value\n // 1: space sep. them unless symb. and sign are adjacent then space sep. them from value\n // 2: space sep. sign and value unless symb. and sign are adjacent then space separates\n var sepBySpace = neg ? monetary.n_sep_by_space : monetary.p_sep_by_space\n\n // p_cs_precedes, n_cs_precedes\n // positive currency symbol follows value = 0; precedes value = 1\n var csPrecedes = neg ? monetary.n_cs_precedes : monetary.p_cs_precedes\n\n // Assemble symbol/value/sign and possible space as appropriate\n if (flags.indexOf('(') !== -1) {\n // flag: parenth. for negative\n // @todo: unclear on whether and how sepBySpace, signPosn, or csPrecedes have\n // an impact here (as they do below), but assuming for now behaves as signPosn 0 as\n // far as localized sepBySpace and signPosn behavior\n repl = (csPrecedes ? symbol + (sepBySpace === 1 ? ' ' : '') : '') + value + (!csPrecedes ? (\n sepBySpace === 1 ? ' ' : '') + symbol : '')\n if (neg) {\n repl = '(' + repl + ')'\n } else {\n repl = ' ' + repl + ' '\n }\n } else {\n // '+' is default\n // ''\n var posSign = monetary.positive_sign\n // '-'\n var negSign = monetary.negative_sign\n var sign = neg ? (negSign) : (posSign)\n var otherSign = neg ? (posSign) : (negSign)\n var signPadding = ''\n if (signPosn) {\n // has a sign\n signPadding = new Array(otherSign.length - sign.length + 1).join(' ')\n }\n\n var valueAndCS = ''\n switch (signPosn) {\n // 0: parentheses surround value and curr. symbol;\n // 1: sign precedes them;\n // 2: sign follows them;\n // 3: sign immed. precedes curr. symbol; (but may be space between)\n // 4: sign immed. succeeds curr. symbol; (but may be space between)\n case 0:\n valueAndCS = csPrecedes\n ? symbol + (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol\n repl = '(' + valueAndCS + ')'\n break\n case 1:\n valueAndCS = csPrecedes\n ? symbol + (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol\n repl = signPadding + sign + (sepBySpace === 2 ? ' ' : '') + valueAndCS\n break\n case 2:\n valueAndCS = csPrecedes\n ? symbol + (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol\n repl = valueAndCS + (sepBySpace === 2 ? ' ' : '') + sign + signPadding\n break\n case 3:\n repl = csPrecedes\n ? signPadding + sign + (sepBySpace === 2 ? ' ' : '') + symbol +\n (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + sign + signPadding +\n (sepBySpace === 2 ? ' ' : '') + symbol\n break\n case 4:\n repl = csPrecedes\n ? symbol + (sepBySpace === 2 ? ' ' : '') + signPadding + sign +\n (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol +\n (sepBySpace === 2 ? ' ' : '') + sign + signPadding\n break\n }\n }\n\n var padding = width - repl.length\n if (padding > 0) {\n padding = new Array(padding + 1).join(' ')\n // @todo: How does p_sep_by_space affect the count if there is a space?\n // Included in count presumably?\n if (flags.indexOf('-') !== -1) {\n // left-justified (pad to right)\n repl += padding\n } else {\n // right-justified (pad to left)\n repl = padding + repl\n }\n }\n return repl\n }\n\n return format.replace(regex, doReplace)\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/money_format.js"],"names":["module","exports","money_format","format","number","setlocale","require","regex","$global","window","global","$locutus","php","monetary","locales","localeCategories","LC_MONETARY","doReplace","n0","flags","n2","width","n4","left","n6","right","conversion","value","repl","fill","test","match","showCurrSymbol","indexOf","parseInt","neg","slice","decpos","integer","fraction","_strSplice","integerStr","idx","thouSep","integerArr","split","splice","join","intLen","length","filler","fillnum","Array","mon_thousands_sep","monGrouping","mon_grouping","i","decPt","mon_decimal_point","undefined","int_frac_digits","frac_digits","Math","round","parseFloat","substr","symbol","int_curr_symbol","currency_symbol","signPosn","n_sign_posn","p_sign_posn","sepBySpace","n_sep_by_space","p_sep_by_space","csPrecedes","n_cs_precedes","p_cs_precedes","posSign","positive_sign","negSign","negative_sign","sign","otherSign","signPadding","valueAndCS","padding","replace"],"mappings":"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","file":"money_format.js","sourcesContent":["module.exports = function money_format (format, number) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/money_format/\n // original by: Brett Zamir (https://brett-zamir.me)\n // input by: daniel airton wermann (https://wermann.com.br)\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // note 1: This depends on setlocale having the appropriate\n // note 1: locale (these examples use 'en_US')\n // example 1: money_format('%i', 1234.56)\n // returns 1: ' USD 1,234.56'\n // example 2: money_format('%14#8.2n', 1234.5678)\n // returns 2: ' $ 1,234.57'\n // example 3: money_format('%14#8.2n', -1234.5678)\n // returns 3: '-$ 1,234.57'\n // example 4: money_format('%(14#8.2n', 1234.5678)\n // returns 4: ' $ 1,234.57 '\n // example 5: money_format('%(14#8.2n', -1234.5678)\n // returns 5: '($ 1,234.57)'\n // example 6: money_format('%=014#8.2n', 1234.5678)\n // returns 6: ' $000001,234.57'\n // example 7: money_format('%=014#8.2n', -1234.5678)\n // returns 7: '-$000001,234.57'\n // example 8: money_format('%=*14#8.2n', 1234.5678)\n // returns 8: ' $*****1,234.57'\n // example 9: money_format('%=*14#8.2n', -1234.5678)\n // returns 9: '-$*****1,234.57'\n // example 10: money_format('%=*^14#8.2n', 1234.5678)\n // returns 10: ' $****1234.57'\n // example 11: money_format('%=*^14#8.2n', -1234.5678)\n // returns 11: ' -$****1234.57'\n // example 12: money_format('%=*!14#8.2n', 1234.5678)\n // returns 12: ' *****1,234.57'\n // example 13: money_format('%=*!14#8.2n', -1234.5678)\n // returns 13: '-*****1,234.57'\n // example 14: money_format('%i', 3590)\n // returns 14: ' USD 3,590.00'\n\n const setlocale = require('../strings/setlocale')\n\n // Per PHP behavior, there seems to be no extra padding\n // for sign when there is a positive number, though my\n // understanding of the description is that there should be padding;\n // need to revisit examples\n\n // Helpful info at https://ftp.gnu.org/pub/pub/old-gnu/Manuals/glibc-2.2.3/html_chapter/libc_7.html\n // and https://publib.boulder.ibm.com/infocenter/zos/v1r10/index.jsp?topic=/com.ibm.zos.r10.bpxbd00/strfmp.htm\n\n if (typeof number !== 'number') {\n return null\n }\n // 1: flags, 3: width, 5: left, 7: right, 8: conversion\n const regex = /%((=.|[+^(!-])*?)(\\d*?)(#(\\d+))?(\\.(\\d+))?([in%])/g\n\n // Ensure the locale data we need is set up\n setlocale('LC_ALL', 0)\n\n const $global = (typeof window !== 'undefined' ? window : global)\n $global.$locutus = $global.$locutus || {}\n const $locutus = $global.$locutus\n $locutus.php = $locutus.php || {}\n\n const monetary = $locutus.php.locales[$locutus.php.localeCategories.LC_MONETARY].LC_MONETARY\n\n const doReplace = function (n0, flags, n2, width, n4, left, n6, right, conversion) {\n let value = ''\n let repl = ''\n if (conversion === '%') {\n // Percent does not seem to be allowed with intervening content\n return '%'\n }\n const fill = flags && (/=./).test(flags) ? flags.match(/=(.)/)[1] : ' ' // flag: =f (numeric fill)\n // flag: ! (suppress currency symbol)\n const showCurrSymbol = !flags || flags.indexOf('!') === -1\n // field width: w (minimum field width)\n width = parseInt(width, 10) || 0\n\n const neg = number < 0\n // Convert to string\n number = number + ''\n // We don't want negative symbol represented here yet\n number = neg ? number.slice(1) : number\n\n const decpos = number.indexOf('.')\n // Get integer portion\n let integer = decpos !== -1 ? number.slice(0, decpos) : number\n // Get decimal portion\n let fraction = decpos !== -1 ? number.slice(decpos + 1) : ''\n\n const _strSplice = function (integerStr, idx, thouSep) {\n const integerArr = integerStr.split('')\n integerArr.splice(idx, 0, thouSep)\n return integerArr.join('')\n }\n\n const intLen = integer.length\n left = parseInt(left, 10)\n const filler = intLen < left\n if (filler) {\n var fillnum = left - intLen\n integer = new Array(fillnum + 1).join(fill) + integer\n }\n if (flags.indexOf('^') === -1) {\n // flag: ^ (disable grouping characters (of locale))\n // use grouping characters\n // ','\n let thouSep = monetary.mon_thousands_sep\n // [3] (every 3 digits in U.S.A. locale)\n const monGrouping = monetary.mon_grouping\n\n if (monGrouping[0] < integer.length) {\n for (var i = 0, idx = integer.length; i < monGrouping.length; i++) {\n // e.g., 3\n idx -= monGrouping[i]\n if (idx <= 0) {\n break\n }\n if (filler && idx < fillnum) {\n thouSep = fill\n }\n integer = _strSplice(integer, idx, thouSep)\n }\n }\n if (monGrouping[i - 1] > 0) {\n // Repeating last grouping (may only be one) until highest portion of integer reached\n while (idx > monGrouping[i - 1]) {\n idx -= monGrouping[i - 1]\n if (filler && idx < fillnum) {\n thouSep = fill\n }\n integer = _strSplice(integer, idx, thouSep)\n }\n }\n }\n\n // left, right\n if (right === '0') {\n // No decimal or fractional digits\n value = integer\n } else {\n // '.'\n let decPt = monetary.mon_decimal_point\n if (right === '' || right === undefined) {\n right = conversion === 'i' ? monetary.int_frac_digits : monetary.frac_digits\n }\n right = parseInt(right, 10)\n\n if (right === 0) {\n // Only remove fractional portion if explicitly set to zero digits\n fraction = ''\n decPt = ''\n } else if (right < fraction.length) {\n fraction = Math.round(parseFloat(\n fraction.slice(0, right) + '.' + fraction.substr(right, 1)\n ))\n if (right > fraction.length) {\n fraction = new Array(right - fraction.length + 1).join('0') + fraction // prepend with 0's\n }\n } else if (right > fraction.length) {\n fraction += new Array(right - fraction.length + 1).join('0') // pad with 0's\n }\n value = integer + decPt + fraction\n }\n\n let symbol = ''\n if (showCurrSymbol) {\n // 'i' vs. 'n' ('USD' vs. '$')\n symbol = conversion === 'i' ? monetary.int_curr_symbol : monetary.currency_symbol\n }\n const signPosn = neg ? monetary.n_sign_posn : monetary.p_sign_posn\n\n // 0: no space between curr. symbol and value\n // 1: space sep. them unless symb. and sign are adjacent then space sep. them from value\n // 2: space sep. sign and value unless symb. and sign are adjacent then space separates\n const sepBySpace = neg ? monetary.n_sep_by_space : monetary.p_sep_by_space\n\n // p_cs_precedes, n_cs_precedes\n // positive currency symbol follows value = 0; precedes value = 1\n const csPrecedes = neg ? monetary.n_cs_precedes : monetary.p_cs_precedes\n\n // Assemble symbol/value/sign and possible space as appropriate\n if (flags.indexOf('(') !== -1) {\n // flag: parenth. for negative\n // @todo: unclear on whether and how sepBySpace, signPosn, or csPrecedes have\n // an impact here (as they do below), but assuming for now behaves as signPosn 0 as\n // far as localized sepBySpace and signPosn behavior\n repl = (csPrecedes ? symbol + (sepBySpace === 1 ? ' ' : '') : '') + value + (!csPrecedes\n ? (sepBySpace === 1 ? ' ' : '') + symbol\n : '')\n if (neg) {\n repl = '(' + repl + ')'\n } else {\n repl = ' ' + repl + ' '\n }\n } else {\n // '+' is default\n // ''\n const posSign = monetary.positive_sign\n // '-'\n const negSign = monetary.negative_sign\n const sign = neg ? (negSign) : (posSign)\n const otherSign = neg ? (posSign) : (negSign)\n let signPadding = ''\n if (signPosn) {\n // has a sign\n signPadding = new Array(otherSign.length - sign.length + 1).join(' ')\n }\n\n let valueAndCS = ''\n switch (signPosn) {\n // 0: parentheses surround value and curr. symbol;\n // 1: sign precedes them;\n // 2: sign follows them;\n // 3: sign immed. precedes curr. symbol; (but may be space between)\n // 4: sign immed. succeeds curr. symbol; (but may be space between)\n case 0:\n valueAndCS = csPrecedes\n ? symbol + (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol\n repl = '(' + valueAndCS + ')'\n break\n case 1:\n valueAndCS = csPrecedes\n ? symbol + (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol\n repl = signPadding + sign + (sepBySpace === 2 ? ' ' : '') + valueAndCS\n break\n case 2:\n valueAndCS = csPrecedes\n ? symbol + (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol\n repl = valueAndCS + (sepBySpace === 2 ? ' ' : '') + sign + signPadding\n break\n case 3:\n repl = csPrecedes\n ? signPadding + sign + (sepBySpace === 2 ? ' ' : '') + symbol +\n (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + sign + signPadding +\n (sepBySpace === 2 ? ' ' : '') + symbol\n break\n case 4:\n repl = csPrecedes\n ? symbol + (sepBySpace === 2 ? ' ' : '') + signPadding + sign +\n (sepBySpace === 1 ? ' ' : '') + value\n : value + (sepBySpace === 1 ? ' ' : '') + symbol +\n (sepBySpace === 2 ? ' ' : '') + sign + signPadding\n break\n }\n }\n\n let padding = width - repl.length\n if (padding > 0) {\n padding = new Array(padding + 1).join(' ')\n // @todo: How does p_sep_by_space affect the count if there is a space?\n // Included in count presumably?\n if (flags.indexOf('-') !== -1) {\n // left-justified (pad to right)\n repl += padding\n } else {\n // right-justified (pad to left)\n repl = padding + repl\n }\n }\n return repl\n }\n\n return format.replace(regex, doReplace)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/nl2br.js"],"names":["module","exports","nl2br","str","isXhtml","breakTag","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,KAAT,CAAgBC,GAAhB,EAAqBC,OAArB,EAA8B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAI,OAAOD,GAAP,KAAe,WAAf,IAA8BA,QAAQ,IAA1C,EAAgD;AAC9C,WAAO,EAAP;AACD;;AAED;AACA,MAAIE,WAAYD,WAAW,OAAOA,OAAP,KAAmB,WAA/B,GAA8C,SAAS,IAAvD,GAA8D,MAA7E;;AAEA,SAAO,CAACD,MAAM,EAAP,EACJG,OADI,CACI,oBADJ,EAC0BD,WAAW,IADrC,CAAP;AAED,CA/BD","file":"nl2br.js","sourcesContent":["module.exports = function nl2br (str, isXhtml) {\n // discuss at: https://locutus.io/php/nl2br/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Philip Peterson\n // improved by: Onno Marsman (https://twitter.com/onnomarsman)\n // improved by: Atli Þór\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Maximusya\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Reynier de la Rosa (https://scriptinside.blogspot.com.es/)\n // input by: Brett Zamir (https://brett-zamir.me)\n // example 1: nl2br('Kevin\\nvan\\nZonneveld')\n // returns 1: 'Kevin<br />\\nvan<br />\\nZonneveld'\n // example 2: nl2br(\"\\nOne\\nTwo\\n\\nThree\\n\", false)\n // returns 2: '<br>\\nOne<br>\\nTwo<br>\\n<br>\\nThree<br>\\n'\n // example 3: nl2br(\"\\nOne\\nTwo\\n\\nThree\\n\", true)\n // returns 3: '<br />\\nOne<br />\\nTwo<br />\\n<br />\\nThree<br />\\n'\n // example 4: nl2br(null)\n // returns 4: ''\n\n // Some latest browsers when str is null return and unexpected null value\n if (typeof str === 'undefined' || str === null) {\n return ''\n }\n\n // Adjust comment to avoid issue on locutus.io display\n var breakTag = (isXhtml || typeof isXhtml === 'undefined') ? '<br ' + '/>' : '<br>'\n\n return (str + '')\n .replace(/(\\r\\n|\\n\\r|\\r|\\n)/g, breakTag + '$1')\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/nl2br.js"],"names":["module","exports","nl2br","str","isXhtml","breakTag","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,KAAT,CAAgBC,GAAhB,EAAqBC,OAArB,EAA8B;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAI,OAAOD,GAAP,KAAe,WAAf,IAA8BA,QAAQ,IAA1C,EAAgD;AAC9C,WAAO,EAAP;AACD;;AAED;AACA,MAAME,WAAYD,WAAW,OAAOA,OAAP,KAAmB,WAA/B,GAA8C,SAAS,IAAvD,GAA8D,MAA/E;;AAEA,SAAO,CAACD,MAAM,EAAP,EACJG,OADI,CACI,oBADJ,EAC0BD,WAAW,IADrC,CAAP;AAED,CA/BD","file":"nl2br.js","sourcesContent":["module.exports = function nl2br (str, isXhtml) {\n // discuss at: https://locutus.io/php/nl2br/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Philip Peterson\n // improved by: Onno Marsman (https://twitter.com/onnomarsman)\n // improved by: Atli Þór\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Maximusya\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Reynier de la Rosa (https://scriptinside.blogspot.com.es/)\n // input by: Brett Zamir (https://brett-zamir.me)\n // example 1: nl2br('Kevin\\nvan\\nZonneveld')\n // returns 1: 'Kevin<br />\\nvan<br />\\nZonneveld'\n // example 2: nl2br(\"\\nOne\\nTwo\\n\\nThree\\n\", false)\n // returns 2: '<br>\\nOne<br>\\nTwo<br>\\n<br>\\nThree<br>\\n'\n // example 3: nl2br(\"\\nOne\\nTwo\\n\\nThree\\n\", true)\n // returns 3: '<br />\\nOne<br />\\nTwo<br />\\n<br />\\nThree<br />\\n'\n // example 4: nl2br(null)\n // returns 4: ''\n\n // Some latest browsers when str is null return and unexpected null value\n if (typeof str === 'undefined' || str === null) {\n return ''\n }\n\n // Adjust comment to avoid issue on locutus.io display\n const breakTag = (isXhtml || typeof isXhtml === 'undefined') ? '<br ' + '/>' : '<br>'\n\n return (str + '')\n .replace(/(\\r\\n|\\n\\r|\\r|\\n)/g, breakTag + '$1')\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/nl_langinfo.js"],"names":["module","exports","nl_langinfo","item","setlocale","require","$global","window","global","$locutus","php","loc","locales","localeCategories","LC_TIME","indexOf","a","parseInt","replace","A","b","B","p","c","x","X","r","LC_MONETARY","toLowerCase","LC_NUMERIC","LC_MESSAGES","LC_CTYPE"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,WAAT,CAAsBC,IAAtB,EAA4B;AAAE;AAC7C;AACA;AACA;AACA;;AAEA,MAAIC,YAAYC,QAAQ,sBAAR,CAAhB;;AAEAD,YAAU,QAAV,EAAoB,CAApB,EAR2C,CAQpB;;AAEvB,MAAIE,UAAW,OAAOC,MAAP,KAAkB,WAAlB,GAAgCA,MAAhC,GAAyCC,MAAxD;AACAF,UAAQG,QAAR,GAAmBH,QAAQG,QAAR,IAAoB,EAAvC;AACA,MAAIA,WAAWH,QAAQG,QAAvB;AACAA,WAASC,GAAT,GAAeD,SAASC,GAAT,IAAgB,EAA/B;;AAEA,MAAIC,MAAMF,SAASC,GAAT,CAAaE,OAAb,CAAqBH,SAASC,GAAT,CAAaG,gBAAb,CAA8BC,OAAnD,CAAV;AACA,MAAIX,KAAKY,OAAL,CAAa,QAAb,MAA2B,CAA/B,EAAkC;AAChC,WAAOJ,IAAIG,OAAJ,CAAYE,CAAZ,CAAcC,SAASd,KAAKe,OAAL,CAAa,SAAb,EAAwB,EAAxB,CAAT,EAAsC,EAAtC,IAA4C,CAA1D,CAAP;AACD,GAFD,MAEO,IAAIf,KAAKY,OAAL,CAAa,MAAb,MAAyB,CAA7B,EAAgC;AACrC,WAAOJ,IAAIG,OAAJ,CAAYK,CAAZ,CAAcF,SAASd,KAAKe,OAAL,CAAa,OAAb,EAAsB,EAAtB,CAAT,EAAoC,EAApC,IAA0C,CAAxD,CAAP;AACD,GAFM,MAEA,IAAIf,KAAKY,OAAL,CAAa,QAAb,MAA2B,CAA/B,EAAkC;AACvC,WAAOJ,IAAIG,OAAJ,CAAYM,CAAZ,CAAcH,SAASd,KAAKe,OAAL,CAAa,SAAb,EAAwB,EAAxB,CAAT,EAAsC,EAAtC,IAA4C,CAA1D,CAAP;AACD,GAFM,MAEA,IAAIf,KAAKY,OAAL,CAAa,MAAb,MAAyB,CAA7B,EAAgC;AACrC,WAAOJ,IAAIG,OAAJ,CAAYO,CAAZ,CAAcJ,SAASd,KAAKe,OAAL,CAAa,OAAb,EAAsB,EAAtB,CAAT,EAAoC,EAApC,IAA0C,CAAxD,CAAP;AACD,GAFM,MAEA;AACL,YAAQf,IAAR;AACE;AACA,WAAK,QAAL;AACE,eAAOQ,IAAIG,OAAJ,CAAYQ,CAAZ,CAAc,CAAd,CAAP;AACF,WAAK,QAAL;AACE,eAAOX,IAAIG,OAAJ,CAAYQ,CAAZ,CAAc,CAAd,CAAP;AACF,WAAK,SAAL;AACE,eAAOX,IAAIG,OAAJ,CAAYS,CAAnB;AACF,WAAK,OAAL;AACE,eAAOZ,IAAIG,OAAJ,CAAYU,CAAnB;AACF,WAAK,OAAL;AACE,eAAOb,IAAIG,OAAJ,CAAYW,CAAnB;AACF,WAAK,YAAL;AACE,eAAOd,IAAIG,OAAJ,CAAYY,CAAnB;AACF,WAAK,KAAL;AACA,WAAK,UAAL;AACA,WAAK,aAAL;AACA,WAAK,WAAL;AACA,WAAK,WAAL;AACE;AACA,eAAOf,IAAIG,OAAJ,CAAYX,IAAZ,CAAP;AApBJ;AAsBAQ,UAAMF,SAASC,GAAT,CAAaE,OAAb,CAAqBH,SAASC,GAAT,CAAaG,gBAAb,CAA8Bc,WAAnD,CAAN;AACA,QAAIxB,SAAS,UAAb,EAAyB;AACvB;AACAA,aAAO,iBAAP;AACD;AACD,YAAQA,IAAR;AACE,WAAK,iBAAL;AACA,WAAK,iBAAL;AACA,WAAK,mBAAL;AACA,WAAK,mBAAL;AACA,WAAK,eAAL;AACA,WAAK,eAAL;AACA,WAAK,iBAAL;AACA,WAAK,aAAL;AACA,WAAK,eAAL;AACA,WAAK,gBAAL;AACA,WAAK,eAAL;AACA,WAAK,gBAAL;AACA,WAAK,aAAL;AACA,WAAK,aAAL;AACE;AACA,eAAOQ,IAAIgB,WAAJ,CAAgBxB,KAAKyB,WAAL,EAAhB,CAAP;AACF,WAAK,cAAL;AACE;AACA,eAAOjB,IAAIgB,WAAJ,CAAgBxB,KAAKyB,WAAL,EAAhB,CAAP;AAnBJ;AAqBAjB,UAAMF,SAASC,GAAT,CAAaE,OAAb,CAAqBH,SAASC,GAAT,CAAaG,gBAAb,CAA8BgB,UAAnD,CAAN;AACA,YAAQ1B,IAAR;AACE,WAAK,WAAL;AACA,WAAK,eAAL;AACE;AACA,eAAOQ,IAAIkB,UAAJ,CAAe1B,KAAKyB,WAAL,EAAf,CAAP;AACF,WAAK,SAAL;AACA,WAAK,eAAL;AACE;AACA,eAAOjB,IAAIkB,UAAJ,CAAe1B,KAAKyB,WAAL,EAAf,CAAP;AACF,WAAK,UAAL;AACE;AACA,eAAOjB,IAAIkB,UAAJ,CAAe1B,KAAKyB,WAAL,EAAf,CAAP;AAXJ;AAaAjB,UAAMF,SAASC,GAAT,CAAaE,OAAb,CAAqBH,SAASC,GAAT,CAAaG,gBAAb,CAA8BiB,WAAnD,CAAN;AACA,YAAQ3B,IAAR;AACE,WAAK,SAAL;AACA,WAAK,QAAL;AACA,WAAK,QAAL;AACA,WAAK,OAAL;AACE;AACA,eAAOQ,IAAImB,WAAJ,CAAgB3B,IAAhB,CAAP;AANJ;AAQAQ,UAAMF,SAASC,GAAT,CAAaE,OAAb,CAAqBH,SAASC,GAAT,CAAaG,gBAAb,CAA8BkB,QAAnD,CAAN;AACA,QAAI5B,SAAS,SAAb,EAAwB;AACtB,aAAOQ,IAAIoB,QAAJ,CAAa5B,IAAb,CAAP;AACD;;AAED,WAAO,KAAP;AACD;AACF,CAvGD","file":"nl_langinfo.js","sourcesContent":["module.exports = function nl_langinfo (item) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/nl_langinfo/\n // original by: Brett Zamir (https://brett-zamir.me)\n // example 1: nl_langinfo('DAY_1')\n // returns 1: 'Sunday'\n\n var setlocale = require('../strings/setlocale')\n\n setlocale('LC_ALL', 0) // Ensure locale data is available\n\n var $global = (typeof window !== 'undefined' ? window : global)\n $global.$locutus = $global.$locutus || {}\n var $locutus = $global.$locutus\n $locutus.php = $locutus.php || {}\n\n var loc = $locutus.php.locales[$locutus.php.localeCategories.LC_TIME]\n if (item.indexOf('ABDAY_') === 0) {\n return loc.LC_TIME.a[parseInt(item.replace(/^ABDAY_/, ''), 10) - 1]\n } else if (item.indexOf('DAY_') === 0) {\n return loc.LC_TIME.A[parseInt(item.replace(/^DAY_/, ''), 10) - 1]\n } else if (item.indexOf('ABMON_') === 0) {\n return loc.LC_TIME.b[parseInt(item.replace(/^ABMON_/, ''), 10) - 1]\n } else if (item.indexOf('MON_') === 0) {\n return loc.LC_TIME.B[parseInt(item.replace(/^MON_/, ''), 10) - 1]\n } else {\n switch (item) {\n // More LC_TIME\n case 'AM_STR':\n return loc.LC_TIME.p[0]\n case 'PM_STR':\n return loc.LC_TIME.p[1]\n case 'D_T_FMT':\n return loc.LC_TIME.c\n case 'D_FMT':\n return loc.LC_TIME.x\n case 'T_FMT':\n return loc.LC_TIME.X\n case 'T_FMT_AMPM':\n return loc.LC_TIME.r\n case 'ERA':\n case 'ERA_YEAR':\n case 'ERA_D_T_FMT':\n case 'ERA_D_FMT':\n case 'ERA_T_FMT':\n // all fall-throughs\n return loc.LC_TIME[item]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_MONETARY]\n if (item === 'CRNCYSTR') {\n // alias\n item = 'CURRENCY_SYMBOL'\n }\n switch (item) {\n case 'INT_CURR_SYMBOL':\n case 'CURRENCY_SYMBOL':\n case 'MON_DECIMAL_POINT':\n case 'MON_THOUSANDS_SEP':\n case 'POSITIVE_SIGN':\n case 'NEGATIVE_SIGN':\n case 'INT_FRAC_DIGITS':\n case 'FRAC_DIGITS':\n case 'P_CS_PRECEDES':\n case 'P_SEP_BY_SPACE':\n case 'N_CS_PRECEDES':\n case 'N_SEP_BY_SPACE':\n case 'P_SIGN_POSN':\n case 'N_SIGN_POSN':\n // all fall-throughs\n return loc.LC_MONETARY[item.toLowerCase()]\n case 'MON_GROUPING':\n // Same as above, or return something different since this returns an array?\n return loc.LC_MONETARY[item.toLowerCase()]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_NUMERIC]\n switch (item) {\n case 'RADIXCHAR':\n case 'DECIMAL_POINT':\n // Fall-through\n return loc.LC_NUMERIC[item.toLowerCase()]\n case 'THOUSEP':\n case 'THOUSANDS_SEP':\n // Fall-through\n return loc.LC_NUMERIC[item.toLowerCase()]\n case 'GROUPING':\n // Same as above, or return something different since this returns an array?\n return loc.LC_NUMERIC[item.toLowerCase()]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_MESSAGES]\n switch (item) {\n case 'YESEXPR':\n case 'NOEXPR':\n case 'YESSTR':\n case 'NOSTR':\n // all fall-throughs\n return loc.LC_MESSAGES[item]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_CTYPE]\n if (item === 'CODESET') {\n return loc.LC_CTYPE[item]\n }\n\n return false\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/nl_langinfo.js"],"names":["module","exports","nl_langinfo","item","setlocale","require","$global","window","global","$locutus","php","loc","locales","localeCategories","LC_TIME","indexOf","a","parseInt","replace","A","b","B","p","c","x","X","r","LC_MONETARY","toLowerCase","LC_NUMERIC","LC_MESSAGES","LC_CTYPE"],"mappings":"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","file":"nl_langinfo.js","sourcesContent":["module.exports = function nl_langinfo (item) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/nl_langinfo/\n // original by: Brett Zamir (https://brett-zamir.me)\n // example 1: nl_langinfo('DAY_1')\n // returns 1: 'Sunday'\n\n const setlocale = require('../strings/setlocale')\n\n setlocale('LC_ALL', 0) // Ensure locale data is available\n\n const $global = (typeof window !== 'undefined' ? window : global)\n $global.$locutus = $global.$locutus || {}\n const $locutus = $global.$locutus\n $locutus.php = $locutus.php || {}\n\n let loc = $locutus.php.locales[$locutus.php.localeCategories.LC_TIME]\n if (item.indexOf('ABDAY_') === 0) {\n return loc.LC_TIME.a[parseInt(item.replace(/^ABDAY_/, ''), 10) - 1]\n } else if (item.indexOf('DAY_') === 0) {\n return loc.LC_TIME.A[parseInt(item.replace(/^DAY_/, ''), 10) - 1]\n } else if (item.indexOf('ABMON_') === 0) {\n return loc.LC_TIME.b[parseInt(item.replace(/^ABMON_/, ''), 10) - 1]\n } else if (item.indexOf('MON_') === 0) {\n return loc.LC_TIME.B[parseInt(item.replace(/^MON_/, ''), 10) - 1]\n } else {\n switch (item) {\n // More LC_TIME\n case 'AM_STR':\n return loc.LC_TIME.p[0]\n case 'PM_STR':\n return loc.LC_TIME.p[1]\n case 'D_T_FMT':\n return loc.LC_TIME.c\n case 'D_FMT':\n return loc.LC_TIME.x\n case 'T_FMT':\n return loc.LC_TIME.X\n case 'T_FMT_AMPM':\n return loc.LC_TIME.r\n case 'ERA':\n case 'ERA_YEAR':\n case 'ERA_D_T_FMT':\n case 'ERA_D_FMT':\n case 'ERA_T_FMT':\n // all fall-throughs\n return loc.LC_TIME[item]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_MONETARY]\n if (item === 'CRNCYSTR') {\n // alias\n item = 'CURRENCY_SYMBOL'\n }\n switch (item) {\n case 'INT_CURR_SYMBOL':\n case 'CURRENCY_SYMBOL':\n case 'MON_DECIMAL_POINT':\n case 'MON_THOUSANDS_SEP':\n case 'POSITIVE_SIGN':\n case 'NEGATIVE_SIGN':\n case 'INT_FRAC_DIGITS':\n case 'FRAC_DIGITS':\n case 'P_CS_PRECEDES':\n case 'P_SEP_BY_SPACE':\n case 'N_CS_PRECEDES':\n case 'N_SEP_BY_SPACE':\n case 'P_SIGN_POSN':\n case 'N_SIGN_POSN':\n // all fall-throughs\n return loc.LC_MONETARY[item.toLowerCase()]\n case 'MON_GROUPING':\n // Same as above, or return something different since this returns an array?\n return loc.LC_MONETARY[item.toLowerCase()]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_NUMERIC]\n switch (item) {\n case 'RADIXCHAR':\n case 'DECIMAL_POINT':\n // Fall-through\n return loc.LC_NUMERIC[item.toLowerCase()]\n case 'THOUSEP':\n case 'THOUSANDS_SEP':\n // Fall-through\n return loc.LC_NUMERIC[item.toLowerCase()]\n case 'GROUPING':\n // Same as above, or return something different since this returns an array?\n return loc.LC_NUMERIC[item.toLowerCase()]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_MESSAGES]\n switch (item) {\n case 'YESEXPR':\n case 'NOEXPR':\n case 'YESSTR':\n case 'NOSTR':\n // all fall-throughs\n return loc.LC_MESSAGES[item]\n }\n loc = $locutus.php.locales[$locutus.php.localeCategories.LC_CTYPE]\n if (item === 'CODESET') {\n return loc.LC_CTYPE[item]\n }\n\n return false\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/number_format.js"],"names":["module","exports","number_format","number","decimals","decPoint","thousandsSep","replace","n","isFinite","prec","Math","abs","sep","dec","s","toFixedFix","indexOf","round","arr","split","sig","toFixed","toString","length","Array","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,aAAT,CAAwBC,MAAxB,EAAgCC,QAAhC,EAA0CC,QAA1C,EAAoDC,YAApD,EAAkE;AAAE;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEAH,WAAS,CAACA,SAAS,EAAV,EAAcI,OAAd,CAAsB,eAAtB,EAAuC,EAAvC,CAAT;AACA,MAAIC,IAAI,CAACC,SAAS,CAACN,MAAV,CAAD,GAAqB,CAArB,GAAyB,CAACA,MAAlC;AACA,MAAIO,OAAO,CAACD,SAAS,CAACL,QAAV,CAAD,GAAuB,CAAvB,GAA2BO,KAAKC,GAAL,CAASR,QAAT,CAAtC;AACA,MAAIS,MAAO,OAAOP,YAAP,KAAwB,WAAzB,GAAwC,GAAxC,GAA8CA,YAAxD;AACA,MAAIQ,MAAO,OAAOT,QAAP,KAAoB,WAArB,GAAoC,GAApC,GAA0CA,QAApD;AACA,MAAIU,IAAI,EAAR;;AAEA,MAAIC,aAAa,SAAbA,UAAa,CAAUR,CAAV,EAAaE,IAAb,EAAmB;AAClC,QAAI,CAAC,KAAKF,CAAN,EAASS,OAAT,CAAiB,GAAjB,MAA0B,CAAC,CAA/B,EAAkC;AAChC,aAAO,EAAEN,KAAKO,KAAL,CAAWV,IAAI,IAAJ,GAAWE,IAAtB,IAA8B,IAA9B,GAAqCA,IAAvC,CAAP;AACD,KAFD,MAEO;AACL,UAAIS,MAAM,CAAC,KAAKX,CAAN,EAASY,KAAT,CAAe,GAAf,CAAV;AACA,UAAIC,MAAM,EAAV;AACA,UAAI,CAACF,IAAI,CAAJ,CAAD,GAAUT,IAAV,GAAiB,CAArB,EAAwB;AACtBW,cAAM,GAAN;AACD;AACD,aAAO,CAAC,EAAEV,KAAKO,KAAL,CAAW,CAACC,IAAI,CAAJ,CAAD,GAAU,GAAV,GAAgBE,GAAhB,IAAuB,CAACF,IAAI,CAAJ,CAAD,GAAUT,IAAjC,CAAX,IAAqD,IAArD,GAA4DA,IAA9D,CAAD,EAAsEY,OAAtE,CAA8EZ,IAA9E,CAAP;AACD;AACF,GAXD;;AAaA;AACAK,MAAI,CAACL,OAAOM,WAAWR,CAAX,EAAcE,IAAd,EAAoBa,QAApB,EAAP,GAAwC,KAAKZ,KAAKO,KAAL,CAAWV,CAAX,CAA9C,EAA6DY,KAA7D,CAAmE,GAAnE,CAAJ;AACA,MAAIL,EAAE,CAAF,EAAKS,MAAL,GAAc,CAAlB,EAAqB;AACnBT,MAAE,CAAF,IAAOA,EAAE,CAAF,EAAKR,OAAL,CAAa,yBAAb,EAAwCM,GAAxC,CAAP;AACD;AACD,MAAI,CAACE,EAAE,CAAF,KAAQ,EAAT,EAAaS,MAAb,GAAsBd,IAA1B,EAAgC;AAC9BK,MAAE,CAAF,IAAOA,EAAE,CAAF,KAAQ,EAAf;AACAA,MAAE,CAAF,KAAQ,IAAIU,KAAJ,CAAUf,OAAOK,EAAE,CAAF,EAAKS,MAAZ,GAAqB,CAA/B,EAAkCE,IAAlC,CAAuC,GAAvC,CAAR;AACD;;AAED,SAAOX,EAAEW,IAAF,CAAOZ,GAAP,CAAP;AACD,CAlFD","file":"number_format.js","sourcesContent":["module.exports = function number_format (number, decimals, decPoint, thousandsSep) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/number_format/\n // original by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // improved by: davook\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Theriault (https://github.com/Theriault)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Michael White (https://getsprink.com)\n // bugfixed by: Benjamin Lupton\n // bugfixed by: Allan Jensen (https://www.winternet.no)\n // bugfixed by: Howard Yeend\n // bugfixed by: Diogo Resende\n // bugfixed by: Rival\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // revised by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // revised by: Luke Smith (https://lucassmith.name)\n // input by: Kheang Hok Chin (https://www.distantia.ca/)\n // input by: Jay Klehr\n // input by: Amir Habibi (https://www.residence-mixte.com/)\n // input by: Amirouche\n // example 1: number_format(1234.56)\n // returns 1: '1,235'\n // example 2: number_format(1234.56, 2, ',', ' ')\n // returns 2: '1 234,56'\n // example 3: number_format(1234.5678, 2, '.', '')\n // returns 3: '1234.57'\n // example 4: number_format(67, 2, ',', '.')\n // returns 4: '67,00'\n // example 5: number_format(1000)\n // returns 5: '1,000'\n // example 6: number_format(67.311, 2)\n // returns 6: '67.31'\n // example 7: number_format(1000.55, 1)\n // returns 7: '1,000.6'\n // example 8: number_format(67000, 5, ',', '.')\n // returns 8: '67.000,00000'\n // example 9: number_format(0.9, 0)\n // returns 9: '1'\n // example 10: number_format('1.20', 2)\n // returns 10: '1.20'\n // example 11: number_format('1.20', 4)\n // returns 11: '1.2000'\n // example 12: number_format('1.2000', 3)\n // returns 12: '1.200'\n // example 13: number_format('1 000,50', 2, '.', ' ')\n // returns 13: '100 050.00'\n // example 14: number_format(1e-8, 8, '.', '')\n // returns 14: '0.00000001'\n\n number = (number + '').replace(/[^0-9+\\-Ee.]/g, '')\n var n = !isFinite(+number) ? 0 : +number\n var prec = !isFinite(+decimals) ? 0 : Math.abs(decimals)\n var sep = (typeof thousandsSep === 'undefined') ? ',' : thousandsSep\n var dec = (typeof decPoint === 'undefined') ? '.' : decPoint\n var s = ''\n\n var toFixedFix = function (n, prec) {\n if (('' + n).indexOf('e') === -1) {\n return +(Math.round(n + 'e+' + prec) + 'e-' + prec)\n } else {\n var arr = ('' + n).split('e')\n var sig = ''\n if (+arr[1] + prec > 0) {\n sig = '+'\n }\n return (+(Math.round(+arr[0] + 'e' + sig + (+arr[1] + prec)) + 'e-' + prec)).toFixed(prec)\n }\n }\n\n // @todo: for IE parseFloat(0.55).toFixed(0) = 0;\n s = (prec ? toFixedFix(n, prec).toString() : '' + Math.round(n)).split('.')\n if (s[0].length > 3) {\n s[0] = s[0].replace(/\\B(?=(?:\\d{3})+(?!\\d))/g, sep)\n }\n if ((s[1] || '').length < prec) {\n s[1] = s[1] || ''\n s[1] += new Array(prec - s[1].length + 1).join('0')\n }\n\n return s.join(dec)\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/number_format.js"],"names":["module","exports","number_format","number","decimals","decPoint","thousandsSep","replace","n","isFinite","prec","Math","abs","sep","dec","s","toFixedFix","indexOf","round","arr","split","sig","toFixed","toString","length","Array","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,aAAT,CAAwBC,MAAxB,EAAgCC,QAAhC,EAA0CC,QAA1C,EAAoDC,YAApD,EAAkE;AAAE;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEAH,WAAS,CAACA,SAAS,EAAV,EAAcI,OAAd,CAAsB,eAAtB,EAAuC,EAAvC,CAAT;AACA,MAAMC,IAAI,CAACC,SAAS,CAACN,MAAV,CAAD,GAAqB,CAArB,GAAyB,CAACA,MAApC;AACA,MAAMO,OAAO,CAACD,SAAS,CAACL,QAAV,CAAD,GAAuB,CAAvB,GAA2BO,KAAKC,GAAL,CAASR,QAAT,CAAxC;AACA,MAAMS,MAAO,OAAOP,YAAP,KAAwB,WAAzB,GAAwC,GAAxC,GAA8CA,YAA1D;AACA,MAAMQ,MAAO,OAAOT,QAAP,KAAoB,WAArB,GAAoC,GAApC,GAA0CA,QAAtD;AACA,MAAIU,IAAI,EAAR;;AAEA,MAAMC,aAAa,SAAbA,UAAa,CAAUR,CAAV,EAAaE,IAAb,EAAmB;AACpC,QAAI,CAAC,KAAKF,CAAN,EAASS,OAAT,CAAiB,GAAjB,MAA0B,CAAC,CAA/B,EAAkC;AAChC,aAAO,EAAEN,KAAKO,KAAL,CAAWV,IAAI,IAAJ,GAAWE,IAAtB,IAA8B,IAA9B,GAAqCA,IAAvC,CAAP;AACD,KAFD,MAEO;AACL,UAAMS,MAAM,CAAC,KAAKX,CAAN,EAASY,KAAT,CAAe,GAAf,CAAZ;AACA,UAAIC,MAAM,EAAV;AACA,UAAI,CAACF,IAAI,CAAJ,CAAD,GAAUT,IAAV,GAAiB,CAArB,EAAwB;AACtBW,cAAM,GAAN;AACD;AACD,aAAO,CAAC,EAAEV,KAAKO,KAAL,CAAW,CAACC,IAAI,CAAJ,CAAD,GAAU,GAAV,GAAgBE,GAAhB,IAAuB,CAACF,IAAI,CAAJ,CAAD,GAAUT,IAAjC,CAAX,IAAqD,IAArD,GAA4DA,IAA9D,CAAD,EAAsEY,OAAtE,CAA8EZ,IAA9E,CAAP;AACD;AACF,GAXD;;AAaA;AACAK,MAAI,CAACL,OAAOM,WAAWR,CAAX,EAAcE,IAAd,EAAoBa,QAApB,EAAP,GAAwC,KAAKZ,KAAKO,KAAL,CAAWV,CAAX,CAA9C,EAA6DY,KAA7D,CAAmE,GAAnE,CAAJ;AACA,MAAIL,EAAE,CAAF,EAAKS,MAAL,GAAc,CAAlB,EAAqB;AACnBT,MAAE,CAAF,IAAOA,EAAE,CAAF,EAAKR,OAAL,CAAa,yBAAb,EAAwCM,GAAxC,CAAP;AACD;AACD,MAAI,CAACE,EAAE,CAAF,KAAQ,EAAT,EAAaS,MAAb,GAAsBd,IAA1B,EAAgC;AAC9BK,MAAE,CAAF,IAAOA,EAAE,CAAF,KAAQ,EAAf;AACAA,MAAE,CAAF,KAAQ,IAAIU,KAAJ,CAAUf,OAAOK,EAAE,CAAF,EAAKS,MAAZ,GAAqB,CAA/B,EAAkCE,IAAlC,CAAuC,GAAvC,CAAR;AACD;;AAED,SAAOX,EAAEW,IAAF,CAAOZ,GAAP,CAAP;AACD,CAlFD","file":"number_format.js","sourcesContent":["module.exports = function number_format (number, decimals, decPoint, thousandsSep) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/number_format/\n // original by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // improved by: davook\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Theriault (https://github.com/Theriault)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Michael White (https://getsprink.com)\n // bugfixed by: Benjamin Lupton\n // bugfixed by: Allan Jensen (https://www.winternet.no)\n // bugfixed by: Howard Yeend\n // bugfixed by: Diogo Resende\n // bugfixed by: Rival\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // revised by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // revised by: Luke Smith (https://lucassmith.name)\n // input by: Kheang Hok Chin (https://www.distantia.ca/)\n // input by: Jay Klehr\n // input by: Amir Habibi (https://www.residence-mixte.com/)\n // input by: Amirouche\n // example 1: number_format(1234.56)\n // returns 1: '1,235'\n // example 2: number_format(1234.56, 2, ',', ' ')\n // returns 2: '1 234,56'\n // example 3: number_format(1234.5678, 2, '.', '')\n // returns 3: '1234.57'\n // example 4: number_format(67, 2, ',', '.')\n // returns 4: '67,00'\n // example 5: number_format(1000)\n // returns 5: '1,000'\n // example 6: number_format(67.311, 2)\n // returns 6: '67.31'\n // example 7: number_format(1000.55, 1)\n // returns 7: '1,000.6'\n // example 8: number_format(67000, 5, ',', '.')\n // returns 8: '67.000,00000'\n // example 9: number_format(0.9, 0)\n // returns 9: '1'\n // example 10: number_format('1.20', 2)\n // returns 10: '1.20'\n // example 11: number_format('1.20', 4)\n // returns 11: '1.2000'\n // example 12: number_format('1.2000', 3)\n // returns 12: '1.200'\n // example 13: number_format('1 000,50', 2, '.', ' ')\n // returns 13: '100 050.00'\n // example 14: number_format(1e-8, 8, '.', '')\n // returns 14: '0.00000001'\n\n number = (number + '').replace(/[^0-9+\\-Ee.]/g, '')\n const n = !isFinite(+number) ? 0 : +number\n const prec = !isFinite(+decimals) ? 0 : Math.abs(decimals)\n const sep = (typeof thousandsSep === 'undefined') ? ',' : thousandsSep\n const dec = (typeof decPoint === 'undefined') ? '.' : decPoint\n let s = ''\n\n const toFixedFix = function (n, prec) {\n if (('' + n).indexOf('e') === -1) {\n return +(Math.round(n + 'e+' + prec) + 'e-' + prec)\n } else {\n const arr = ('' + n).split('e')\n let sig = ''\n if (+arr[1] + prec > 0) {\n sig = '+'\n }\n return (+(Math.round(+arr[0] + 'e' + sig + (+arr[1] + prec)) + 'e-' + prec)).toFixed(prec)\n }\n }\n\n // @todo: for IE parseFloat(0.55).toFixed(0) = 0;\n s = (prec ? toFixedFix(n, prec).toString() : '' + Math.round(n)).split('.')\n if (s[0].length > 3) {\n s[0] = s[0].replace(/\\B(?=(?:\\d{3})+(?!\\d))/g, sep)\n }\n if ((s[1] || '').length < prec) {\n s[1] = s[1] || ''\n s[1] += new Array(prec - s[1].length + 1).join('0')\n }\n\n return s.join(dec)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/ord.js"],"names":["module","exports","ord","string","str","code","charCodeAt","hi","length","low"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,GAAT,CAAcC,MAAd,EAAsB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,MAAMD,SAAS,EAAnB;AACA,MAAIE,OAAOD,IAAIE,UAAJ,CAAe,CAAf,CAAX;;AAEA,MAAID,QAAQ,MAAR,IAAkBA,QAAQ,MAA9B,EAAsC;AACpC;AACA;AACA,QAAIE,KAAKF,IAAT;AACA,QAAID,IAAII,MAAJ,KAAe,CAAnB,EAAsB;AACpB;AACA;AACA,aAAOH,IAAP;AACA;AACA;AACD;AACD,QAAII,MAAML,IAAIE,UAAJ,CAAe,CAAf,CAAV;AACA,WAAQ,CAACC,KAAK,MAAN,IAAgB,KAAjB,IAA2BE,MAAM,MAAjC,IAA2C,OAAlD;AACD;AACD,MAAIJ,QAAQ,MAAR,IAAkBA,QAAQ,MAA9B,EAAsC;AACpC;AACA;AACA;AACA,WAAOA,IAAP;AACA;AACA;AACD;;AAED,SAAOA,IAAP;AACD,CAtCD","file":"ord.js","sourcesContent":["module.exports = function ord (string) {\n // discuss at: https://locutus.io/php/ord/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // input by: incidence\n // example 1: ord('K')\n // returns 1: 75\n // example 2: ord('\\uD800\\uDC00'); // surrogate pair to create a single Unicode character\n // returns 2: 65536\n\n var str = string + ''\n var code = str.charCodeAt(0)\n\n if (code >= 0xD800 && code <= 0xDBFF) {\n // High surrogate (could change last hex to 0xDB7F to treat\n // high private surrogates as single characters)\n var hi = code\n if (str.length === 1) {\n // This is just a high surrogate with no following low surrogate,\n // so we return its value;\n return code\n // we could also throw an error as it is not a complete character,\n // but someone may want to know\n }\n var low = str.charCodeAt(1)\n return ((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000\n }\n if (code >= 0xDC00 && code <= 0xDFFF) {\n // Low surrogate\n // This is just a low surrogate with no preceding high surrogate,\n // so we return its value;\n return code\n // we could also throw an error as it is not a complete character,\n // but someone may want to know\n }\n\n return code\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/ord.js"],"names":["module","exports","ord","string","str","code","charCodeAt","hi","length","low"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,GAAT,CAAcC,MAAd,EAAsB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,MAAMD,SAAS,EAArB;AACA,MAAME,OAAOD,IAAIE,UAAJ,CAAe,CAAf,CAAb;;AAEA,MAAID,QAAQ,MAAR,IAAkBA,QAAQ,MAA9B,EAAsC;AACpC;AACA;AACA,QAAME,KAAKF,IAAX;AACA,QAAID,IAAII,MAAJ,KAAe,CAAnB,EAAsB;AACpB;AACA;AACA,aAAOH,IAAP;AACA;AACA;AACD;AACD,QAAMI,MAAML,IAAIE,UAAJ,CAAe,CAAf,CAAZ;AACA,WAAQ,CAACC,KAAK,MAAN,IAAgB,KAAjB,IAA2BE,MAAM,MAAjC,IAA2C,OAAlD;AACD;AACD,MAAIJ,QAAQ,MAAR,IAAkBA,QAAQ,MAA9B,EAAsC;AACpC;AACA;AACA;AACA,WAAOA,IAAP;AACA;AACA;AACD;;AAED,SAAOA,IAAP;AACD,CAtCD","file":"ord.js","sourcesContent":["module.exports = function ord (string) {\n // discuss at: https://locutus.io/php/ord/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // input by: incidence\n // example 1: ord('K')\n // returns 1: 75\n // example 2: ord('\\uD800\\uDC00'); // surrogate pair to create a single Unicode character\n // returns 2: 65536\n\n const str = string + ''\n const code = str.charCodeAt(0)\n\n if (code >= 0xD800 && code <= 0xDBFF) {\n // High surrogate (could change last hex to 0xDB7F to treat\n // high private surrogates as single characters)\n const hi = code\n if (str.length === 1) {\n // This is just a high surrogate with no following low surrogate,\n // so we return its value;\n return code\n // we could also throw an error as it is not a complete character,\n // but someone may want to know\n }\n const low = str.charCodeAt(1)\n return ((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000\n }\n if (code >= 0xDC00 && code <= 0xDFFF) {\n // Low surrogate\n // This is just a low surrogate with no preceding high surrogate,\n // so we return its value;\n return code\n // we could also throw an error as it is not a complete character,\n // but someone may want to know\n }\n\n return code\n}\n"]}
@@ -45,19 +45,19 @@ module.exports = function parse_str(str, array) {
45
45
 
46
46
  var strArr = String(str).replace(/^&/, '').replace(/&$/, '').split('&');
47
47
  var sal = strArr.length;
48
- var i;
49
- var j;
50
- var ct;
51
- var p;
52
- var lastObj;
53
- var obj;
54
- var chr;
55
- var tmp;
56
- var key;
57
- var value;
58
- var postLeftBracketPos;
59
- var keys;
60
- var keysLen;
48
+ var i = void 0;
49
+ var j = void 0;
50
+ var ct = void 0;
51
+ var p = void 0;
52
+ var lastObj = void 0;
53
+ var obj = void 0;
54
+ var chr = void 0;
55
+ var tmp = void 0;
56
+ var key = void 0;
57
+ var value = void 0;
58
+ var postLeftBracketPos = void 0;
59
+ var keys = void 0;
60
+ var keysLen = void 0;
61
61
 
62
62
  var _fixStr = function _fixStr(str) {
63
63
  return decodeURIComponent(str.replace(/\+/g, '%20'));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/parse_str.js"],"names":["module","exports","parse_str","str","array","strArr","String","replace","split","sal","length","i","j","ct","p","lastObj","obj","chr","tmp","key","value","postLeftBracketPos","keys","keysLen","_fixStr","decodeURIComponent","$global","window","global","$locutus","php","includes","charAt","slice","indexOf","push","substr","hasOwnProperty","match","Object"],"mappings":"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","file":"parse_str.js","sourcesContent":["module.exports = function parse_str (str, array) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/parse_str/\n // original by: Cagri Ekin\n // improved by: Michael White (https://getsprink.com)\n // improved by: Jack\n // improved by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: stag019\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: MIO_KODUKI (https://mio-koduki.blogspot.com/)\n // reimplemented by: stag019\n // input by: Dreamer\n // input by: Zaide (https://zaidesthings.com/)\n // input by: David Pesta (https://davidpesta.com/)\n // input by: jeicquest\n // bugfixed by: Rafał Kukawski\n // note 1: When no argument is specified, will put variables in global scope.\n // note 1: When a particular argument has been passed, and the\n // note 1: returned value is different parse_str of PHP.\n // note 1: For example, a=b=c&d====c\n // example 1: var $arr = {}\n // example 1: parse_str('first=foo&second=bar', $arr)\n // example 1: var $result = $arr\n // returns 1: { first: 'foo', second: 'bar' }\n // example 2: var $arr = {}\n // example 2: parse_str('str_a=Jack+and+Jill+didn%27t+see+the+well.', $arr)\n // example 2: var $result = $arr\n // returns 2: { str_a: \"Jack and Jill didn't see the well.\" }\n // example 3: var $abc = {3:'a'}\n // example 3: parse_str('a[b][\"c\"]=def&a[q]=t+5', $abc)\n // example 3: var $result = $abc\n // returns 3: {\"3\":\"a\",\"a\":{\"b\":{\"c\":\"def\"},\"q\":\"t 5\"}}\n // example 4: var $arr = {}\n // example 4: parse_str('a[][]=value', $arr)\n // example 4: var $result = $arr\n // returns 4: {\"a\":{\"0\":{\"0\":\"value\"}}}\n // example 5: var $arr = {}\n // example 5: parse_str('a=1&a[]=2', $arr)\n // example 5: var $result = $arr\n // returns 5: {\"a\":{\"0\":\"2\"}}\n\n var strArr = String(str).replace(/^&/, '').replace(/&$/, '').split('&')\n var sal = strArr.length\n var i\n var j\n var ct\n var p\n var lastObj\n var obj\n var chr\n var tmp\n var key\n var value\n var postLeftBracketPos\n var keys\n var keysLen\n\n var _fixStr = function (str) {\n return decodeURIComponent(str.replace(/\\+/g, '%20'))\n }\n\n var $global = (typeof window !== 'undefined' ? window : global)\n $global.$locutus = $global.$locutus || {}\n var $locutus = $global.$locutus\n $locutus.php = $locutus.php || {}\n\n if (!array) {\n array = $global\n }\n\n for (i = 0; i < sal; i++) {\n tmp = strArr[i].split('=')\n key = _fixStr(tmp[0])\n value = (tmp.length < 2) ? '' : _fixStr(tmp[1])\n\n if (key.includes('__proto__') || key.includes('constructor') || key.includes('prototype')) {\n break;\n }\n\n while (key.charAt(0) === ' ') {\n key = key.slice(1)\n }\n\n if (key.indexOf('\\x00') > -1) {\n key = key.slice(0, key.indexOf('\\x00'))\n }\n\n if (key && key.charAt(0) !== '[') {\n keys = []\n postLeftBracketPos = 0\n\n for (j = 0; j < key.length; j++) {\n if (key.charAt(j) === '[' && !postLeftBracketPos) {\n postLeftBracketPos = j + 1\n } else if (key.charAt(j) === ']') {\n if (postLeftBracketPos) {\n if (!keys.length) {\n keys.push(key.slice(0, postLeftBracketPos - 1))\n }\n\n keys.push(key.substr(postLeftBracketPos, j - postLeftBracketPos))\n postLeftBracketPos = 0\n\n if (key.charAt(j + 1) !== '[') {\n break\n }\n }\n }\n }\n\n if (!keys.length) {\n keys = [key]\n }\n\n for (j = 0; j < keys[0].length; j++) {\n chr = keys[0].charAt(j)\n\n if (chr === ' ' || chr === '.' || chr === '[') {\n keys[0] = keys[0].substr(0, j) + '_' + keys[0].substr(j + 1)\n }\n\n if (chr === '[') {\n break\n }\n }\n\n obj = array\n\n for (j = 0, keysLen = keys.length; j < keysLen; j++) {\n key = keys[j].replace(/^['\"]/, '').replace(/['\"]$/, '')\n lastObj = obj\n\n if ((key === '' || key === ' ') && j !== 0) {\n // Insert new dimension\n ct = -1\n\n for (p in obj) {\n if (obj.hasOwnProperty(p)) {\n if (+p > ct && p.match(/^\\d+$/g)) {\n ct = +p\n }\n }\n }\n\n key = ct + 1\n }\n\n // if primitive value, replace with object\n if (Object(obj[key]) !== obj[key]) {\n obj[key] = {}\n }\n\n obj = obj[key]\n }\n\n lastObj[key] = value\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/parse_str.js"],"names":["module","exports","parse_str","str","array","strArr","String","replace","split","sal","length","i","j","ct","p","lastObj","obj","chr","tmp","key","value","postLeftBracketPos","keys","keysLen","_fixStr","decodeURIComponent","$global","window","global","$locutus","php","includes","charAt","slice","indexOf","push","substr","hasOwnProperty","match","Object"],"mappings":"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","file":"parse_str.js","sourcesContent":["module.exports = function parse_str (str, array) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/parse_str/\n // original by: Cagri Ekin\n // improved by: Michael White (https://getsprink.com)\n // improved by: Jack\n // improved by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: stag019\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: MIO_KODUKI (https://mio-koduki.blogspot.com/)\n // reimplemented by: stag019\n // input by: Dreamer\n // input by: Zaide (https://zaidesthings.com/)\n // input by: David Pesta (https://davidpesta.com/)\n // input by: jeicquest\n // bugfixed by: Rafał Kukawski\n // note 1: When no argument is specified, will put variables in global scope.\n // note 1: When a particular argument has been passed, and the\n // note 1: returned value is different parse_str of PHP.\n // note 1: For example, a=b=c&d====c\n // example 1: var $arr = {}\n // example 1: parse_str('first=foo&second=bar', $arr)\n // example 1: var $result = $arr\n // returns 1: { first: 'foo', second: 'bar' }\n // example 2: var $arr = {}\n // example 2: parse_str('str_a=Jack+and+Jill+didn%27t+see+the+well.', $arr)\n // example 2: var $result = $arr\n // returns 2: { str_a: \"Jack and Jill didn't see the well.\" }\n // example 3: var $abc = {3:'a'}\n // example 3: parse_str('a[b][\"c\"]=def&a[q]=t+5', $abc)\n // example 3: var $result = $abc\n // returns 3: {\"3\":\"a\",\"a\":{\"b\":{\"c\":\"def\"},\"q\":\"t 5\"}}\n // example 4: var $arr = {}\n // example 4: parse_str('a[][]=value', $arr)\n // example 4: var $result = $arr\n // returns 4: {\"a\":{\"0\":{\"0\":\"value\"}}}\n // example 5: var $arr = {}\n // example 5: parse_str('a=1&a[]=2', $arr)\n // example 5: var $result = $arr\n // returns 5: {\"a\":{\"0\":\"2\"}}\n\n const strArr = String(str).replace(/^&/, '').replace(/&$/, '').split('&')\n const sal = strArr.length\n let i\n let j\n let ct\n let p\n let lastObj\n let obj\n let chr\n let tmp\n let key\n let value\n let postLeftBracketPos\n let keys\n let keysLen\n\n const _fixStr = function (str) {\n return decodeURIComponent(str.replace(/\\+/g, '%20'))\n }\n\n const $global = (typeof window !== 'undefined' ? window : global)\n $global.$locutus = $global.$locutus || {}\n const $locutus = $global.$locutus\n $locutus.php = $locutus.php || {}\n\n if (!array) {\n array = $global\n }\n\n for (i = 0; i < sal; i++) {\n tmp = strArr[i].split('=')\n key = _fixStr(tmp[0])\n value = (tmp.length < 2) ? '' : _fixStr(tmp[1])\n\n if (key.includes('__proto__') || key.includes('constructor') || key.includes('prototype')) {\n break\n }\n\n while (key.charAt(0) === ' ') {\n key = key.slice(1)\n }\n\n if (key.indexOf('\\x00') > -1) {\n key = key.slice(0, key.indexOf('\\x00'))\n }\n\n if (key && key.charAt(0) !== '[') {\n keys = []\n postLeftBracketPos = 0\n\n for (j = 0; j < key.length; j++) {\n if (key.charAt(j) === '[' && !postLeftBracketPos) {\n postLeftBracketPos = j + 1\n } else if (key.charAt(j) === ']') {\n if (postLeftBracketPos) {\n if (!keys.length) {\n keys.push(key.slice(0, postLeftBracketPos - 1))\n }\n\n keys.push(key.substr(postLeftBracketPos, j - postLeftBracketPos))\n postLeftBracketPos = 0\n\n if (key.charAt(j + 1) !== '[') {\n break\n }\n }\n }\n }\n\n if (!keys.length) {\n keys = [key]\n }\n\n for (j = 0; j < keys[0].length; j++) {\n chr = keys[0].charAt(j)\n\n if (chr === ' ' || chr === '.' || chr === '[') {\n keys[0] = keys[0].substr(0, j) + '_' + keys[0].substr(j + 1)\n }\n\n if (chr === '[') {\n break\n }\n }\n\n obj = array\n\n for (j = 0, keysLen = keys.length; j < keysLen; j++) {\n key = keys[j].replace(/^['\"]/, '').replace(/['\"]$/, '')\n lastObj = obj\n\n if ((key === '' || key === ' ') && j !== 0) {\n // Insert new dimension\n ct = -1\n\n for (p in obj) {\n if (obj.hasOwnProperty(p)) {\n if (+p > ct && p.match(/^\\d+$/g)) {\n ct = +p\n }\n }\n }\n\n key = ct + 1\n }\n\n // if primitive value, replace with object\n if (Object(obj[key]) !== obj[key]) {\n obj[key] = {}\n }\n\n obj = obj[key]\n }\n\n lastObj[key] = value\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/printf.js"],"names":["module","exports","printf","sprintf","require","echo","ret","apply","arguments","length"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,MAAT,GAAmB;AAClC;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,UAAUC,QAAQ,oBAAR,CAAd;AACA,MAAIC,OAAOD,QAAQ,iBAAR,CAAX;AACA,MAAIE,MAAMH,QAAQI,KAAR,CAAc,IAAd,EAAoBC,SAApB,CAAV;AACAH,OAAKC,GAAL;AACA,SAAOA,IAAIG,MAAX;AACD,CAbD","file":"printf.js","sourcesContent":["module.exports = function printf () {\n // discuss at: https://locutus.io/php/printf/\n // original by: Ash Searle (https://hexmen.com/blog/)\n // improved by: Michael White (https://getsprink.com)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // example 1: printf(\"%01.2f\", 123.1)\n // returns 1: 6\n\n var sprintf = require('../strings/sprintf')\n var echo = require('../strings/echo')\n var ret = sprintf.apply(this, arguments)\n echo(ret)\n return ret.length\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/printf.js"],"names":["module","exports","printf","sprintf","require","echo","ret","apply","arguments","length"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,MAAT,GAAmB;AAClC;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,UAAUC,QAAQ,oBAAR,CAAhB;AACA,MAAMC,OAAOD,QAAQ,iBAAR,CAAb;AACA,MAAME,MAAMH,QAAQI,KAAR,CAAc,IAAd,EAAoBC,SAApB,CAAZ;AACAH,OAAKC,GAAL;AACA,SAAOA,IAAIG,MAAX;AACD,CAbD","file":"printf.js","sourcesContent":["module.exports = function printf () {\n // discuss at: https://locutus.io/php/printf/\n // original by: Ash Searle (https://hexmen.com/blog/)\n // improved by: Michael White (https://getsprink.com)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // example 1: printf(\"%01.2f\", 123.1)\n // returns 1: 6\n\n const sprintf = require('../strings/sprintf')\n const echo = require('../strings/echo')\n const ret = sprintf.apply(this, arguments)\n echo(ret)\n return ret.length\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/quoted_printable_decode.js"],"names":["module","exports","quoted_printable_decode","str","RFC2045Decode1","RFC2045Decode2IN","RFC2045Decode2OUT","sMatch","sHex","String","fromCharCode","parseInt","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,uBAAT,CAAkCC,GAAlC,EAAuC;AAAE;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAIC,iBAAiB,SAArB;;AAEA;AACA,MAAIC,mBAAmB,mBAAvB;AACA;;AAEA,MAAIC,oBAAoB,SAApBA,iBAAoB,CAAUC,MAAV,EAAkBC,IAAlB,EAAwB;AAC9C,WAAOC,OAAOC,YAAP,CAAoBC,SAASH,IAAT,EAAe,EAAf,CAApB,CAAP;AACD,GAFD;;AAIA,SAAOL,IAAIS,OAAJ,CAAYR,cAAZ,EAA4B,EAA5B,EACJQ,OADI,CACIP,gBADJ,EACsBC,iBADtB,CAAP;AAED,CA7BD","file":"quoted_printable_decode.js","sourcesContent":["module.exports = function quoted_printable_decode (str) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/quoted_printable_decode/\n // original by: Ole Vrijenhoek\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Theriault (https://github.com/Theriault)\n // reimplemented by: Theriault (https://github.com/Theriault)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // example 1: quoted_printable_decode('a=3Db=3Dc')\n // returns 1: 'a=b=c'\n // example 2: quoted_printable_decode('abc =20\\r\\n123 =20\\r\\n')\n // returns 2: 'abc \\r\\n123 \\r\\n'\n // example 3: quoted_printable_decode('012345678901234567890123456789012345678901234567890123456789012345678901234=\\r\\n56789')\n // returns 3: '01234567890123456789012345678901234567890123456789012345678901234567890123456789'\n // example 4: quoted_printable_decode(\"Lorem ipsum dolor sit amet=23, consectetur adipisicing elit\")\n // returns 4: 'Lorem ipsum dolor sit amet#, consectetur adipisicing elit'\n\n // Decodes all equal signs followed by two hex digits\n var RFC2045Decode1 = /=\\r\\n/gm\n\n // the RFC states against decoding lower case encodings, but following apparent PHP behavior\n var RFC2045Decode2IN = /=([0-9A-F]{2})/gim\n // RFC2045Decode2IN = /=([0-9A-F]{2})/gm,\n\n var RFC2045Decode2OUT = function (sMatch, sHex) {\n return String.fromCharCode(parseInt(sHex, 16))\n }\n\n return str.replace(RFC2045Decode1, '')\n .replace(RFC2045Decode2IN, RFC2045Decode2OUT)\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/quoted_printable_decode.js"],"names":["module","exports","quoted_printable_decode","str","RFC2045Decode1","RFC2045Decode2IN","RFC2045Decode2OUT","sMatch","sHex","String","fromCharCode","parseInt","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,uBAAT,CAAkCC,GAAlC,EAAuC;AAAE;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMC,iBAAiB,SAAvB;;AAEA;AACA,MAAMC,mBAAmB,mBAAzB;AACA;;AAEA,MAAMC,oBAAoB,SAApBA,iBAAoB,CAAUC,MAAV,EAAkBC,IAAlB,EAAwB;AAChD,WAAOC,OAAOC,YAAP,CAAoBC,SAASH,IAAT,EAAe,EAAf,CAApB,CAAP;AACD,GAFD;;AAIA,SAAOL,IAAIS,OAAJ,CAAYR,cAAZ,EAA4B,EAA5B,EACJQ,OADI,CACIP,gBADJ,EACsBC,iBADtB,CAAP;AAED,CA7BD","file":"quoted_printable_decode.js","sourcesContent":["module.exports = function quoted_printable_decode (str) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/quoted_printable_decode/\n // original by: Ole Vrijenhoek\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Theriault (https://github.com/Theriault)\n // reimplemented by: Theriault (https://github.com/Theriault)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // example 1: quoted_printable_decode('a=3Db=3Dc')\n // returns 1: 'a=b=c'\n // example 2: quoted_printable_decode('abc =20\\r\\n123 =20\\r\\n')\n // returns 2: 'abc \\r\\n123 \\r\\n'\n // example 3: quoted_printable_decode('012345678901234567890123456789012345678901234567890123456789012345678901234=\\r\\n56789')\n // returns 3: '01234567890123456789012345678901234567890123456789012345678901234567890123456789'\n // example 4: quoted_printable_decode(\"Lorem ipsum dolor sit amet=23, consectetur adipisicing elit\")\n // returns 4: 'Lorem ipsum dolor sit amet#, consectetur adipisicing elit'\n\n // Decodes all equal signs followed by two hex digits\n const RFC2045Decode1 = /=\\r\\n/gm\n\n // the RFC states against decoding lower case encodings, but following apparent PHP behavior\n const RFC2045Decode2IN = /=([0-9A-F]{2})/gim\n // RFC2045Decode2IN = /=([0-9A-F]{2})/gm,\n\n const RFC2045Decode2OUT = function (sMatch, sHex) {\n return String.fromCharCode(parseInt(sHex, 16))\n }\n\n return str.replace(RFC2045Decode1, '')\n .replace(RFC2045Decode2IN, RFC2045Decode2OUT)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/quoted_printable_encode.js"],"names":["module","exports","quoted_printable_encode","str","hexChars","RFC2045Encode1IN","RFC2045Encode1OUT","sMatch","length","replace","chr","charCodeAt","RFC2045Encode2IN","RFC2045Encode2OUT","substr"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,uBAAT,CAAkCC,GAAlC,EAAuC;AAAE;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,WAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,EAAgB,GAAhB,EAAqB,GAArB,EAA0B,GAA1B,EAA+B,GAA/B,EAAoC,GAApC,EAAyC,GAAzC,EAA8C,GAA9C,EAAmD,GAAnD,EAAwD,GAAxD,EAA6D,GAA7D,EAAkE,GAAlE,EAAuE,GAAvE,EAA4E,GAA5E,CAAf;AACA,MAAIC,mBAAmB,yBAAvB;AACA,MAAIC,oBAAoB,SAApBA,iBAAoB,CAAUC,MAAV,EAAkB;AACxC;AACA;AACA,QAAIA,OAAOC,MAAP,GAAgB,CAApB,EAAuB;AACrB,aAAOD,OAAOE,OAAP,CAAe,GAAf,EAAoB,KAApB,CAAP;AACD;AACD;AACA,QAAIC,MAAMH,OAAOI,UAAP,CAAkB,CAAlB,CAAV;AACA,WAAO,MAAMP,SAAWM,QAAQ,CAAT,GAAc,EAAxB,CAAN,GAAqCN,SAAUM,MAAM,EAAhB,CAA5C;AACD,GATD;;AAWA;AACA;AACA;AACA;;AAEA,MAAIE,mBAAmB,2BAAvB;AACA,MAAIC,oBAAoB,SAApBA,iBAAoB,CAAUN,MAAV,EAAkB;AACxC,QAAIA,OAAOO,MAAP,CAAcP,OAAOC,MAAP,GAAgB,CAA9B,MAAqC,MAAzC,EAAiD;AAC/C,aAAOD,MAAP;AACD;AACD,WAAOA,SAAS,OAAhB;AACD,GALD;;AAOAJ,QAAMA,IACHM,OADG,CACKJ,gBADL,EACuBC,iBADvB,EAEHG,OAFG,CAEKG,gBAFL,EAEuBC,iBAFvB,CAAN;;AAIA;AACA,SAAOV,IAAIW,MAAJ,CAAW,CAAX,EAAcX,IAAIK,MAAJ,GAAa,CAA3B,CAAP;AACD,CA7CD","file":"quoted_printable_encode.js","sourcesContent":["module.exports = function quoted_printable_encode (str) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/quoted_printable_encode/\n // original by: Theriault (https://github.com/Theriault)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Theriault (https://github.com/Theriault)\n // example 1: quoted_printable_encode('a=b=c')\n // returns 1: 'a=3Db=3Dc'\n // example 2: quoted_printable_encode('abc \\r\\n123 \\r\\n')\n // returns 2: 'abc =20\\r\\n123 =20\\r\\n'\n // example 3: quoted_printable_encode('0123456789012345678901234567890123456789012345678901234567890123456789012345')\n // returns 3: '012345678901234567890123456789012345678901234567890123456789012345678901234=\\r\\n5'\n // test: skip-2\n\n var hexChars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F']\n var RFC2045Encode1IN = / \\r\\n|\\r\\n|[^!-<>-~ ]/gm\n var RFC2045Encode1OUT = function (sMatch) {\n // Encode space before CRLF sequence to prevent spaces from being stripped\n // Keep hard line breaks intact; CRLF sequences\n if (sMatch.length > 1) {\n return sMatch.replace(' ', '=20')\n }\n // Encode matching character\n var chr = sMatch.charCodeAt(0)\n return '=' + hexChars[((chr >>> 4) & 15)] + hexChars[(chr & 15)]\n }\n\n // Split lines to 75 characters; the reason it's 75 and not 76 is because softline breaks are\n // preceeded by an equal sign; which would be the 76th character. However, if the last line/string\n // was exactly 76 characters, then a softline would not be needed. PHP currently softbreaks\n // anyway; so this function replicates PHP.\n\n var RFC2045Encode2IN = /.{1,72}(?!\\r\\n)[^=]{0,3}/g\n var RFC2045Encode2OUT = function (sMatch) {\n if (sMatch.substr(sMatch.length - 2) === '\\r\\n') {\n return sMatch\n }\n return sMatch + '=\\r\\n'\n }\n\n str = str\n .replace(RFC2045Encode1IN, RFC2045Encode1OUT)\n .replace(RFC2045Encode2IN, RFC2045Encode2OUT)\n\n // Strip last softline break\n return str.substr(0, str.length - 3)\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/quoted_printable_encode.js"],"names":["module","exports","quoted_printable_encode","str","hexChars","RFC2045Encode1IN","RFC2045Encode1OUT","sMatch","length","replace","chr","charCodeAt","RFC2045Encode2IN","RFC2045Encode2OUT","substr"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,uBAAT,CAAkCC,GAAlC,EAAuC;AAAE;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,WAAW,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,EAAgB,GAAhB,EAAqB,GAArB,EAA0B,GAA1B,EAA+B,GAA/B,EAAoC,GAApC,EAAyC,GAAzC,EAA8C,GAA9C,EAAmD,GAAnD,EAAwD,GAAxD,EAA6D,GAA7D,EAAkE,GAAlE,EAAuE,GAAvE,EAA4E,GAA5E,CAAjB;AACA,MAAMC,mBAAmB,yBAAzB;AACA,MAAMC,oBAAoB,SAApBA,iBAAoB,CAAUC,MAAV,EAAkB;AAC1C;AACA;AACA,QAAIA,OAAOC,MAAP,GAAgB,CAApB,EAAuB;AACrB,aAAOD,OAAOE,OAAP,CAAe,GAAf,EAAoB,KAApB,CAAP;AACD;AACD;AACA,QAAMC,MAAMH,OAAOI,UAAP,CAAkB,CAAlB,CAAZ;AACA,WAAO,MAAMP,SAAWM,QAAQ,CAAT,GAAc,EAAxB,CAAN,GAAqCN,SAAUM,MAAM,EAAhB,CAA5C;AACD,GATD;;AAWA;AACA;AACA;AACA;;AAEA,MAAME,mBAAmB,2BAAzB;AACA,MAAMC,oBAAoB,SAApBA,iBAAoB,CAAUN,MAAV,EAAkB;AAC1C,QAAIA,OAAOO,MAAP,CAAcP,OAAOC,MAAP,GAAgB,CAA9B,MAAqC,MAAzC,EAAiD;AAC/C,aAAOD,MAAP;AACD;AACD,WAAOA,SAAS,OAAhB;AACD,GALD;;AAOAJ,QAAMA,IACHM,OADG,CACKJ,gBADL,EACuBC,iBADvB,EAEHG,OAFG,CAEKG,gBAFL,EAEuBC,iBAFvB,CAAN;;AAIA;AACA,SAAOV,IAAIW,MAAJ,CAAW,CAAX,EAAcX,IAAIK,MAAJ,GAAa,CAA3B,CAAP;AACD,CA7CD","file":"quoted_printable_encode.js","sourcesContent":["module.exports = function quoted_printable_encode (str) { // eslint-disable-line camelcase\n // discuss at: https://locutus.io/php/quoted_printable_encode/\n // original by: Theriault (https://github.com/Theriault)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Theriault (https://github.com/Theriault)\n // example 1: quoted_printable_encode('a=b=c')\n // returns 1: 'a=3Db=3Dc'\n // example 2: quoted_printable_encode('abc \\r\\n123 \\r\\n')\n // returns 2: 'abc =20\\r\\n123 =20\\r\\n'\n // example 3: quoted_printable_encode('0123456789012345678901234567890123456789012345678901234567890123456789012345')\n // returns 3: '012345678901234567890123456789012345678901234567890123456789012345678901234=\\r\\n5'\n // test: skip-2\n\n const hexChars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F']\n const RFC2045Encode1IN = / \\r\\n|\\r\\n|[^!-<>-~ ]/gm\n const RFC2045Encode1OUT = function (sMatch) {\n // Encode space before CRLF sequence to prevent spaces from being stripped\n // Keep hard line breaks intact; CRLF sequences\n if (sMatch.length > 1) {\n return sMatch.replace(' ', '=20')\n }\n // Encode matching character\n const chr = sMatch.charCodeAt(0)\n return '=' + hexChars[((chr >>> 4) & 15)] + hexChars[(chr & 15)]\n }\n\n // Split lines to 75 characters; the reason it's 75 and not 76 is because softline breaks are\n // preceeded by an equal sign; which would be the 76th character. However, if the last line/string\n // was exactly 76 characters, then a softline would not be needed. PHP currently softbreaks\n // anyway; so this function replicates PHP.\n\n const RFC2045Encode2IN = /.{1,72}(?!\\r\\n)[^=]{0,3}/g\n const RFC2045Encode2OUT = function (sMatch) {\n if (sMatch.substr(sMatch.length - 2) === '\\r\\n') {\n return sMatch\n }\n return sMatch + '=\\r\\n'\n }\n\n str = str\n .replace(RFC2045Encode1IN, RFC2045Encode1OUT)\n .replace(RFC2045Encode2IN, RFC2045Encode2OUT)\n\n // Strip last softline break\n return str.substr(0, str.length - 3)\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/php/strings/rtrim.js"],"names":["module","exports","rtrim","str","charlist","replace","re","RegExp"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,KAAT,CAAgBC,GAAhB,EAAqBC,QAArB,EAA+B;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEAA,aAAW,CAACA,QAAD,GAAY,UAAZ,GAA2B,CAACA,WAAW,EAAZ,EACnCC,OADmC,CAC3B,sBAD2B,EACH,MADG,CAAtC;;AAGA,MAAIC,KAAK,IAAIC,MAAJ,CAAW,MAAMH,QAAN,GAAiB,KAA5B,EAAmC,GAAnC,CAAT;;AAEA,SAAO,CAACD,MAAM,EAAP,EAAWE,OAAX,CAAmBC,EAAnB,EAAuB,EAAvB,CAAP;AACD,CAjBD","file":"rtrim.js","sourcesContent":["module.exports = function rtrim (str, charlist) {\n // discuss at: https://locutus.io/php/rtrim/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // input by: Erkekjetter\n // input by: rem\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // example 1: rtrim(' Kevin van Zonneveld ')\n // returns 1: ' Kevin van Zonneveld'\n\n charlist = !charlist ? ' \\\\s\\u00A0' : (charlist + '')\n .replace(/([[\\]().?/*{}+$^:])/g, '\\\\$1')\n\n var re = new RegExp('[' + charlist + ']+$', 'g')\n\n return (str + '').replace(re, '')\n}\n"]}
1
+ {"version":3,"sources":["../../../src/php/strings/rtrim.js"],"names":["module","exports","rtrim","str","charlist","replace","re","RegExp"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,KAAT,CAAgBC,GAAhB,EAAqBC,QAArB,EAA+B;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEAA,aAAW,CAACA,QAAD,GACP,UADO,GAEP,CAACA,WAAW,EAAZ,EAAgBC,OAAhB,CAAwB,sBAAxB,EAAgD,MAAhD,CAFJ;;AAIA,MAAMC,KAAK,IAAIC,MAAJ,CAAW,MAAMH,QAAN,GAAiB,KAA5B,EAAmC,GAAnC,CAAX;;AAEA,SAAO,CAACD,MAAM,EAAP,EAAWE,OAAX,CAAmBC,EAAnB,EAAuB,EAAvB,CAAP;AACD,CAlBD","file":"rtrim.js","sourcesContent":["module.exports = function rtrim (str, charlist) {\n // discuss at: https://locutus.io/php/rtrim/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // input by: Erkekjetter\n // input by: rem\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // example 1: rtrim(' Kevin van Zonneveld ')\n // returns 1: ' Kevin van Zonneveld'\n\n charlist = !charlist\n ? ' \\\\s\\u00A0'\n : (charlist + '').replace(/([[\\]().?/*{}+$^:])/g, '\\\\$1')\n\n const re = new RegExp('[' + charlist + ']+$', 'g')\n\n return (str + '').replace(re, '')\n}\n"]}