locutus 2.0.15 → 2.0.29
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.
- package/_util/util.js +13 -13
- package/_util/util.js.map +1 -1
- package/c/math/abs.js.map +1 -1
- package/c/math/frexp.js.map +1 -1
- package/c/stdio/sprintf.js +1 -1
- package/c/stdio/sprintf.js.map +1 -1
- package/golang/strings/Contains.js.map +1 -1
- package/golang/strings/Count.js.map +1 -1
- package/golang/strings/Index2.js.map +1 -1
- package/golang/strings/LastIndex.js.map +1 -1
- package/package.json +62 -59
- package/php/_helpers/_bc.js +2 -3
- package/php/_helpers/_bc.js.map +1 -1
- package/php/_helpers/_phpCastString.js.map +1 -1
- package/php/_helpers/_php_cast_float.js +0 -1
- package/php/_helpers/_php_cast_float.js.map +1 -1
- package/php/_helpers/_php_cast_int.js +0 -1
- package/php/_helpers/_php_cast_int.js.map +1 -1
- package/php/array/array_change_key_case.js +0 -1
- package/php/array/array_change_key_case.js.map +1 -1
- package/php/array/array_chunk.js +6 -5
- package/php/array/array_chunk.js.map +1 -1
- package/php/array/array_column.js +1 -1
- package/php/array/array_column.js.map +1 -1
- package/php/array/array_combine.js +0 -1
- package/php/array/array_combine.js.map +1 -1
- package/php/array/array_count_values.js +0 -1
- package/php/array/array_count_values.js.map +1 -1
- package/php/array/array_diff.js +0 -2
- package/php/array/array_diff.js.map +1 -1
- package/php/array/array_diff_assoc.js +0 -2
- package/php/array/array_diff_assoc.js.map +1 -1
- package/php/array/array_diff_key.js +0 -2
- package/php/array/array_diff_key.js.map +1 -1
- package/php/array/array_diff_uassoc.js +0 -2
- package/php/array/array_diff_uassoc.js.map +1 -1
- package/php/array/array_diff_ukey.js +0 -2
- package/php/array/array_diff_ukey.js.map +1 -1
- package/php/array/array_fill.js +0 -1
- package/php/array/array_fill.js.map +1 -1
- package/php/array/array_fill_keys.js +0 -1
- package/php/array/array_fill_keys.js.map +1 -1
- package/php/array/array_filter.js +0 -1
- package/php/array/array_filter.js.map +1 -1
- package/php/array/array_flip.js +0 -1
- package/php/array/array_flip.js.map +1 -1
- package/php/array/array_intersect.js +0 -3
- package/php/array/array_intersect.js.map +1 -1
- package/php/array/array_intersect_assoc.js +0 -3
- package/php/array/array_intersect_assoc.js.map +1 -1
- package/php/array/array_intersect_key.js +0 -3
- package/php/array/array_intersect_key.js.map +1 -1
- package/php/array/array_intersect_uassoc.js +0 -3
- package/php/array/array_intersect_uassoc.js.map +1 -1
- package/php/array/array_intersect_ukey.js +0 -3
- package/php/array/array_intersect_ukey.js.map +1 -1
- package/php/array/array_key_exists.js +0 -1
- package/php/array/array_key_exists.js.map +1 -1
- package/php/array/array_keys.js +0 -1
- package/php/array/array_keys.js.map +1 -1
- package/php/array/array_map.js +0 -1
- package/php/array/array_map.js.map +1 -1
- package/php/array/array_merge.js +0 -1
- package/php/array/array_merge.js.map +1 -1
- package/php/array/array_merge_recursive.js +0 -1
- package/php/array/array_merge_recursive.js.map +1 -1
- package/php/array/array_multisort.js +0 -1
- package/php/array/array_multisort.js.map +1 -1
- package/php/array/array_pad.js +0 -1
- package/php/array/array_pad.js.map +1 -1
- package/php/array/array_pop.js +0 -1
- package/php/array/array_pop.js.map +1 -1
- package/php/array/array_product.js +0 -1
- package/php/array/array_product.js.map +1 -1
- package/php/array/array_push.js +0 -1
- package/php/array/array_push.js.map +1 -1
- package/php/array/array_rand.js +0 -1
- package/php/array/array_rand.js.map +1 -1
- package/php/array/array_reduce.js +0 -1
- package/php/array/array_reduce.js.map +1 -1
- package/php/array/array_replace.js +0 -1
- package/php/array/array_replace.js.map +1 -1
- package/php/array/array_replace_recursive.js +0 -1
- package/php/array/array_replace_recursive.js.map +1 -1
- package/php/array/array_reverse.js +0 -1
- package/php/array/array_reverse.js.map +1 -1
- package/php/array/array_search.js +1 -2
- package/php/array/array_search.js.map +1 -1
- package/php/array/array_shift.js +0 -20
- package/php/array/array_shift.js.map +1 -1
- package/php/array/array_slice.js +2 -2
- package/php/array/array_slice.js.map +1 -1
- package/php/array/array_splice.js +0 -1
- package/php/array/array_splice.js.map +1 -1
- package/php/array/array_sum.js +0 -1
- package/php/array/array_sum.js.map +1 -1
- package/php/array/array_udiff.js +0 -3
- package/php/array/array_udiff.js.map +1 -1
- package/php/array/array_udiff_assoc.js +0 -2
- package/php/array/array_udiff_assoc.js.map +1 -1
- package/php/array/array_udiff_uassoc.js +0 -2
- package/php/array/array_udiff_uassoc.js.map +1 -1
- package/php/array/array_uintersect.js +0 -3
- package/php/array/array_uintersect.js.map +1 -1
- package/php/array/array_uintersect_uassoc.js +0 -3
- package/php/array/array_uintersect_uassoc.js.map +1 -1
- package/php/array/array_unique.js +0 -1
- package/php/array/array_unique.js.map +1 -1
- package/php/array/array_unshift.js +0 -1
- package/php/array/array_unshift.js.map +1 -1
- package/php/array/array_values.js +0 -1
- package/php/array/array_values.js.map +1 -1
- package/php/array/array_walk.js +0 -1
- package/php/array/array_walk.js.map +1 -1
- package/php/array/array_walk_recursive.js +0 -1
- package/php/array/array_walk_recursive.js.map +1 -1
- package/php/array/arsort.js.map +1 -1
- package/php/array/asort.js.map +1 -1
- package/php/array/count.js.map +1 -1
- package/php/array/current.js.map +1 -1
- package/php/array/each.js.map +1 -1
- package/php/array/end.js.map +1 -1
- package/php/array/in_array.js +1 -2
- package/php/array/in_array.js.map +1 -1
- package/php/array/key.js.map +1 -1
- package/php/array/krsort.js.map +1 -1
- package/php/array/ksort.js.map +1 -1
- package/php/array/natcasesort.js.map +1 -1
- package/php/array/natsort.js.map +1 -1
- package/php/array/next.js.map +1 -1
- package/php/array/pos.js.map +1 -1
- package/php/array/prev.js.map +1 -1
- package/php/array/range.js.map +1 -1
- package/php/array/reset.js.map +1 -1
- package/php/array/rsort.js.map +1 -1
- package/php/array/shuffle.js.map +1 -1
- package/php/array/sizeof.js.map +1 -1
- package/php/array/sort.js.map +1 -1
- package/php/array/uasort.js.map +1 -1
- package/php/array/uksort.js.map +1 -1
- package/php/array/usort.js.map +1 -1
- package/php/bc/bcadd.js.map +1 -1
- package/php/bc/bccomp.js.map +1 -1
- package/php/bc/bcdiv.js.map +1 -1
- package/php/bc/bcmul.js.map +1 -1
- package/php/bc/bcround.js.map +1 -1
- package/php/bc/bcscale.js.map +1 -1
- package/php/bc/bcsub.js.map +1 -1
- package/php/ctype/ctype_alnum.js +0 -1
- package/php/ctype/ctype_alnum.js.map +1 -1
- package/php/ctype/ctype_alpha.js +0 -1
- package/php/ctype/ctype_alpha.js.map +1 -1
- package/php/ctype/ctype_cntrl.js +0 -1
- package/php/ctype/ctype_cntrl.js.map +1 -1
- package/php/ctype/ctype_digit.js +0 -1
- package/php/ctype/ctype_digit.js.map +1 -1
- package/php/ctype/ctype_graph.js +0 -1
- package/php/ctype/ctype_graph.js.map +1 -1
- package/php/ctype/ctype_lower.js +0 -1
- package/php/ctype/ctype_lower.js.map +1 -1
- package/php/ctype/ctype_print.js +0 -1
- package/php/ctype/ctype_print.js.map +1 -1
- package/php/ctype/ctype_punct.js +0 -1
- package/php/ctype/ctype_punct.js.map +1 -1
- package/php/ctype/ctype_space.js +0 -1
- package/php/ctype/ctype_space.js.map +1 -1
- package/php/ctype/ctype_upper.js +0 -1
- package/php/ctype/ctype_upper.js.map +1 -1
- package/php/ctype/ctype_xdigit.js +0 -1
- package/php/ctype/ctype_xdigit.js.map +1 -1
- package/php/datetime/checkdate.js.map +1 -1
- package/php/datetime/date.js +1 -2
- package/php/datetime/date.js.map +1 -1
- package/php/datetime/date_parse.js +0 -1
- package/php/datetime/date_parse.js.map +1 -1
- package/php/datetime/getdate.js +1 -2
- package/php/datetime/getdate.js.map +1 -1
- package/php/datetime/gettimeofday.js.map +1 -1
- package/php/datetime/gmdate.js.map +1 -1
- package/php/datetime/gmmktime.js.map +1 -1
- package/php/datetime/gmstrftime.js.map +1 -1
- package/php/datetime/idate.js.map +1 -1
- package/php/datetime/microtime.js +1 -1
- package/php/datetime/microtime.js.map +1 -1
- package/php/datetime/mktime.js.map +1 -1
- package/php/datetime/strftime.js +2 -3
- package/php/datetime/strftime.js.map +1 -1
- package/php/datetime/strptime.js +19 -20
- package/php/datetime/strptime.js.map +1 -1
- package/php/datetime/strtotime.js +28 -14
- package/php/datetime/strtotime.js.map +1 -1
- package/php/datetime/time.js.map +1 -1
- package/php/exec/escapeshellarg.js +1 -1
- package/php/exec/escapeshellarg.js.map +1 -1
- package/php/filesystem/basename.js.map +1 -1
- package/php/filesystem/dirname.js.map +1 -1
- package/php/filesystem/file_get_contents.js +0 -1
- package/php/filesystem/file_get_contents.js.map +1 -1
- package/php/filesystem/pathinfo.js +2 -3
- package/php/filesystem/pathinfo.js.map +1 -1
- package/php/filesystem/realpath.js.map +1 -1
- package/php/funchand/call_user_func.js +0 -1
- package/php/funchand/call_user_func.js.map +1 -1
- package/php/funchand/call_user_func_array.js +0 -1
- package/php/funchand/call_user_func_array.js.map +1 -1
- package/php/funchand/create_function.js +0 -1
- package/php/funchand/create_function.js.map +1 -1
- package/php/funchand/function_exists.js +0 -1
- package/php/funchand/function_exists.js.map +1 -1
- package/php/funchand/get_defined_functions.js +0 -1
- package/php/funchand/get_defined_functions.js.map +1 -1
- package/php/i18n/i18n_loc_get_default.js +0 -1
- package/php/i18n/i18n_loc_get_default.js.map +1 -1
- package/php/i18n/i18n_loc_set_default.js +0 -1
- package/php/i18n/i18n_loc_set_default.js.map +1 -1
- package/php/info/assert_options.js +0 -1
- package/php/info/assert_options.js.map +1 -1
- package/php/info/getenv.js.map +1 -1
- package/php/info/ini_get.js +0 -1
- package/php/info/ini_get.js.map +1 -1
- package/php/info/ini_set.js +0 -1
- package/php/info/ini_set.js.map +1 -1
- package/php/info/set_time_limit.js +0 -1
- package/php/info/set_time_limit.js.map +1 -1
- package/php/info/version_compare.js +10 -12
- package/php/info/version_compare.js.map +1 -1
- package/php/json/json_decode.js +0 -1
- package/php/json/json_decode.js.map +1 -1
- package/php/json/json_encode.js +0 -1
- package/php/json/json_encode.js.map +1 -1
- package/php/json/json_last_error.js +0 -1
- package/php/json/json_last_error.js.map +1 -1
- package/php/math/abs.js.map +1 -1
- package/php/math/acos.js.map +1 -1
- package/php/math/acosh.js.map +1 -1
- package/php/math/asin.js.map +1 -1
- package/php/math/asinh.js.map +1 -1
- package/php/math/atan.js.map +1 -1
- package/php/math/atan2.js.map +1 -1
- package/php/math/atanh.js.map +1 -1
- package/php/math/base_convert.js +0 -1
- package/php/math/base_convert.js.map +1 -1
- package/php/math/bindec.js.map +1 -1
- package/php/math/ceil.js.map +1 -1
- package/php/math/cos.js.map +1 -1
- package/php/math/cosh.js.map +1 -1
- package/php/math/decbin.js +1 -1
- package/php/math/decbin.js.map +1 -1
- package/php/math/dechex.js +1 -1
- package/php/math/dechex.js.map +1 -1
- package/php/math/decoct.js +1 -1
- package/php/math/decoct.js.map +1 -1
- package/php/math/deg2rad.js.map +1 -1
- package/php/math/exp.js.map +1 -1
- package/php/math/expm1.js.map +1 -1
- package/php/math/floor.js.map +1 -1
- package/php/math/fmod.js.map +1 -1
- package/php/math/getrandmax.js.map +1 -1
- package/php/math/hexdec.js.map +1 -1
- package/php/math/hypot.js.map +1 -1
- package/php/math/is_finite.js +0 -1
- package/php/math/is_finite.js.map +1 -1
- package/php/math/is_infinite.js +0 -1
- package/php/math/is_infinite.js.map +1 -1
- package/php/math/is_nan.js +0 -1
- package/php/math/is_nan.js.map +1 -1
- package/php/math/lcg_value.js +0 -1
- package/php/math/lcg_value.js.map +1 -1
- package/php/math/log.js.map +1 -1
- package/php/math/log10.js.map +1 -1
- package/php/math/log1p.js.map +1 -1
- package/php/math/max.js.map +1 -1
- package/php/math/min.js.map +1 -1
- package/php/math/mt_getrandmax.js +0 -1
- package/php/math/mt_getrandmax.js.map +1 -1
- package/php/math/mt_rand.js +0 -1
- package/php/math/mt_rand.js.map +1 -1
- package/php/math/octdec.js.map +1 -1
- package/php/math/pi.js.map +1 -1
- package/php/math/pow.js.map +1 -1
- package/php/math/rad2deg.js.map +1 -1
- package/php/math/rand.js.map +1 -1
- package/php/math/round.js.map +1 -1
- package/php/math/sin.js.map +1 -1
- package/php/math/sinh.js.map +1 -1
- package/php/math/sqrt.js.map +1 -1
- package/php/math/tan.js.map +1 -1
- package/php/math/tanh.js.map +1 -1
- package/php/misc/pack.js +15 -15
- package/php/misc/pack.js.map +1 -1
- package/php/misc/uniqid.js.map +1 -1
- package/php/net-gopher/gopher_parsedir.js +2 -4
- package/php/net-gopher/gopher_parsedir.js.map +1 -1
- package/php/network/inet_ntop.js +0 -1
- package/php/network/inet_ntop.js.map +1 -1
- package/php/network/inet_pton.js +1 -2
- package/php/network/inet_pton.js.map +1 -1
- package/php/network/ip2long.js.map +1 -1
- package/php/network/long2ip.js +1 -1
- package/php/network/long2ip.js.map +1 -1
- package/php/network/setcookie.js.map +1 -1
- package/php/network/setrawcookie.js.map +1 -1
- package/php/pcre/preg_match.js +0 -1
- package/php/pcre/preg_match.js.map +1 -1
- package/php/pcre/preg_quote.js +0 -1
- package/php/pcre/preg_quote.js.map +1 -1
- package/php/pcre/preg_replace.js +0 -1
- package/php/pcre/preg_replace.js.map +1 -1
- package/php/pcre/sql_regcase.js +0 -1
- package/php/pcre/sql_regcase.js.map +1 -1
- package/php/strings/addcslashes.js.map +1 -1
- package/php/strings/addslashes.js.map +1 -1
- package/php/strings/bin2hex.js.map +1 -1
- package/php/strings/chop.js.map +1 -1
- package/php/strings/chr.js +2 -2
- package/php/strings/chr.js.map +1 -1
- package/php/strings/chunk_split.js +0 -1
- package/php/strings/chunk_split.js.map +1 -1
- package/php/strings/convert_cyr_string.js +0 -1
- package/php/strings/convert_cyr_string.js.map +1 -1
- package/php/strings/convert_uuencode.js +0 -1
- package/php/strings/convert_uuencode.js.map +1 -1
- package/php/strings/count_chars.js +0 -1
- package/php/strings/count_chars.js.map +1 -1
- package/php/strings/crc32.js +1 -1
- package/php/strings/crc32.js.map +1 -1
- package/php/strings/echo.js.map +1 -1
- package/php/strings/explode.js.map +1 -1
- package/php/strings/get_html_translation_table.js +0 -1
- package/php/strings/get_html_translation_table.js.map +1 -1
- package/php/strings/hex2bin.js.map +1 -1
- package/php/strings/html_entity_decode.js +0 -1
- package/php/strings/html_entity_decode.js.map +1 -1
- package/php/strings/htmlentities.js.map +1 -1
- package/php/strings/htmlspecialchars.js.map +1 -1
- package/php/strings/htmlspecialchars_decode.js +0 -1
- package/php/strings/htmlspecialchars_decode.js.map +1 -1
- package/php/strings/implode.js.map +1 -1
- package/php/strings/join.js.map +1 -1
- package/php/strings/lcfirst.js.map +1 -1
- package/php/strings/levenshtein.js.map +1 -1
- package/php/strings/localeconv.js.map +1 -1
- package/php/strings/ltrim.js.map +1 -1
- package/php/strings/md5.js +67 -67
- package/php/strings/md5.js.map +1 -1
- package/php/strings/md5_file.js +0 -1
- package/php/strings/md5_file.js.map +1 -1
- package/php/strings/metaphone.js +1 -1
- package/php/strings/metaphone.js.map +1 -1
- package/php/strings/money_format.js +0 -1
- package/php/strings/money_format.js.map +1 -1
- package/php/strings/nl2br.js.map +1 -1
- package/php/strings/nl_langinfo.js +0 -1
- package/php/strings/nl_langinfo.js.map +1 -1
- package/php/strings/number_format.js +0 -1
- package/php/strings/number_format.js.map +1 -1
- package/php/strings/ord.js +3 -3
- package/php/strings/ord.js.map +1 -1
- package/php/strings/parse_str.js +0 -1
- package/php/strings/parse_str.js.map +1 -1
- package/php/strings/printf.js.map +1 -1
- package/php/strings/quoted_printable_decode.js +0 -1
- package/php/strings/quoted_printable_decode.js.map +1 -1
- package/php/strings/quoted_printable_encode.js +0 -1
- package/php/strings/quoted_printable_encode.js.map +1 -1
- package/php/strings/quotemeta.js.map +1 -1
- package/php/strings/rtrim.js.map +1 -1
- package/php/strings/setlocale.js +2 -3
- package/php/strings/setlocale.js.map +1 -1
- package/php/strings/sha1.js +7 -7
- package/php/strings/sha1.js.map +1 -1
- package/php/strings/sha1_file.js +0 -1
- package/php/strings/sha1_file.js.map +1 -1
- package/php/strings/similar_text.js +1 -2
- package/php/strings/similar_text.js.map +1 -1
- package/php/strings/soundex.js.map +1 -1
- package/php/strings/split.js.map +1 -1
- package/php/strings/sprintf.js.map +1 -1
- package/php/strings/sscanf.js +1 -1
- package/php/strings/sscanf.js.map +1 -1
- package/php/strings/str_getcsv.js +0 -1
- package/php/strings/str_getcsv.js.map +1 -1
- package/php/strings/str_ireplace.js +0 -1
- package/php/strings/str_ireplace.js.map +1 -1
- package/php/strings/str_pad.js +0 -1
- package/php/strings/str_pad.js.map +1 -1
- package/php/strings/str_repeat.js +0 -1
- package/php/strings/str_repeat.js.map +1 -1
- package/php/strings/str_replace.js +0 -1
- package/php/strings/str_replace.js.map +1 -1
- package/php/strings/str_rot13.js +0 -1
- package/php/strings/str_rot13.js.map +1 -1
- package/php/strings/str_shuffle.js +0 -1
- package/php/strings/str_shuffle.js.map +1 -1
- package/php/strings/str_split.js +0 -1
- package/php/strings/str_split.js.map +1 -1
- package/php/strings/str_word_count.js +4 -5
- package/php/strings/str_word_count.js.map +1 -1
- package/php/strings/strcasecmp.js.map +1 -1
- package/php/strings/strchr.js.map +1 -1
- package/php/strings/strcmp.js.map +1 -1
- package/php/strings/strcoll.js.map +1 -1
- package/php/strings/strcspn.js.map +1 -1
- package/php/strings/strip_tags.js +0 -1
- package/php/strings/strip_tags.js.map +1 -1
- package/php/strings/stripos.js.map +1 -1
- package/php/strings/stripslashes.js.map +1 -1
- package/php/strings/stristr.js.map +1 -1
- package/php/strings/strlen.js +4 -4
- package/php/strings/strlen.js.map +1 -1
- package/php/strings/strnatcasecmp.js.map +1 -1
- package/php/strings/strnatcmp.js.map +1 -1
- package/php/strings/strncasecmp.js.map +1 -1
- package/php/strings/strncmp.js.map +1 -1
- package/php/strings/strpbrk.js.map +1 -1
- package/php/strings/strpos.js.map +1 -1
- package/php/strings/strrchr.js.map +1 -1
- package/php/strings/strrev.js.map +1 -1
- package/php/strings/strripos.js.map +1 -1
- package/php/strings/strrpos.js.map +1 -1
- package/php/strings/strspn.js.map +1 -1
- package/php/strings/strstr.js.map +1 -1
- package/php/strings/strtok.js.map +1 -1
- package/php/strings/strtolower.js.map +1 -1
- package/php/strings/strtoupper.js.map +1 -1
- package/php/strings/strtr.js.map +1 -1
- package/php/strings/substr.js.map +1 -1
- package/php/strings/substr_compare.js +0 -1
- package/php/strings/substr_compare.js.map +1 -1
- package/php/strings/substr_count.js +0 -1
- package/php/strings/substr_count.js.map +1 -1
- package/php/strings/substr_replace.js +0 -1
- package/php/strings/substr_replace.js.map +1 -1
- package/php/strings/trim.js.map +1 -1
- package/php/strings/ucfirst.js.map +1 -1
- package/php/strings/ucwords.js.map +1 -1
- package/php/strings/vprintf.js.map +1 -1
- package/php/strings/vsprintf.js.map +1 -1
- package/php/strings/wordwrap.js.map +1 -1
- package/php/url/base64_decode.js +0 -1
- package/php/url/base64_decode.js.map +1 -1
- package/php/url/base64_encode.js +0 -1
- package/php/url/base64_encode.js.map +1 -1
- package/php/url/http_build_query.js +0 -1
- package/php/url/http_build_query.js.map +1 -1
- package/php/url/parse_url.js +0 -1
- package/php/url/parse_url.js.map +1 -1
- package/php/url/rawurldecode.js.map +1 -1
- package/php/url/rawurlencode.js.map +1 -1
- package/php/url/urldecode.js.map +1 -1
- package/php/url/urlencode.js.map +1 -1
- package/php/var/boolval.js.map +1 -1
- package/php/var/doubleval.js.map +1 -1
- package/php/var/empty.js.map +1 -1
- package/php/var/floatval.js.map +1 -1
- package/php/var/gettype.js.map +1 -1
- package/php/var/intval.js.map +1 -1
- package/php/var/is_array.js +0 -1
- package/php/var/is_array.js.map +1 -1
- package/php/var/is_binary.js +0 -1
- package/php/var/is_binary.js.map +1 -1
- package/php/var/is_bool.js +0 -1
- package/php/var/is_bool.js.map +1 -1
- package/php/var/is_buffer.js +0 -1
- package/php/var/is_buffer.js.map +1 -1
- package/php/var/is_callable.js +1 -2
- package/php/var/is_callable.js.map +1 -1
- package/php/var/is_double.js +0 -1
- package/php/var/is_double.js.map +1 -1
- package/php/var/is_float.js +0 -1
- package/php/var/is_float.js.map +1 -1
- package/php/var/is_int.js +0 -1
- package/php/var/is_int.js.map +1 -1
- package/php/var/is_integer.js +0 -1
- package/php/var/is_integer.js.map +1 -1
- package/php/var/is_long.js +0 -1
- package/php/var/is_long.js.map +1 -1
- package/php/var/is_null.js +0 -1
- package/php/var/is_null.js.map +1 -1
- package/php/var/is_numeric.js +0 -1
- package/php/var/is_numeric.js.map +1 -1
- package/php/var/is_object.js +0 -1
- package/php/var/is_object.js.map +1 -1
- package/php/var/is_real.js +0 -1
- package/php/var/is_real.js.map +1 -1
- package/php/var/is_scalar.js +0 -1
- package/php/var/is_scalar.js.map +1 -1
- package/php/var/is_string.js +0 -1
- package/php/var/is_string.js.map +1 -1
- package/php/var/is_unicode.js +0 -1
- package/php/var/is_unicode.js.map +1 -1
- package/php/var/isset.js.map +1 -1
- package/php/var/print_r.js +0 -1
- package/php/var/print_r.js.map +1 -1
- package/php/var/serialize.js.map +1 -1
- package/php/var/strval.js.map +1 -1
- package/php/var/unserialize.js +12 -16
- package/php/var/unserialize.js.map +1 -1
- package/php/var/var_dump.js +0 -1
- package/php/var/var_dump.js.map +1 -1
- package/php/var/var_export.js +1 -2
- package/php/var/var_export.js.map +1 -1
- package/php/xdiff/xdiff_string_diff.js +0 -1
- package/php/xdiff/xdiff_string_diff.js.map +1 -1
- package/php/xdiff/xdiff_string_patch.js +2 -4
- package/php/xdiff/xdiff_string_patch.js.map +1 -1
- package/php/xml/utf8_decode.js +10 -11
- package/php/xml/utf8_decode.js.map +1 -1
- package/php/xml/utf8_encode.js +4 -5
- package/php/xml/utf8_encode.js.map +1 -1
- package/python/string/ascii_letters.js +0 -1
- package/python/string/ascii_letters.js.map +1 -1
- package/python/string/ascii_lowercase.js +0 -1
- package/python/string/ascii_lowercase.js.map +1 -1
- package/python/string/ascii_uppercase.js +0 -1
- package/python/string/ascii_uppercase.js.map +1 -1
- package/python/string/capwords.js.map +1 -1
- package/python/string/index.js +1 -0
- package/python/string/index.js.map +1 -1
- package/python/string/punctuation.js +10 -0
- package/python/string/punctuation.js.map +1 -0
- package/ruby/Math/acos.js.map +1 -1
- package/php/_locutus_shared/_locutus_shared_bc.js +0 -1255
- package/php/_locutus_shared/_locutus_shared_bc.js.map +0 -1
- package/php/_locutus_shared/index.js +0 -4
- package/php/_locutus_shared/index.js.map +0 -1
package/php/misc/pack.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/misc/pack.js"],"names":["module","exports","pack","format","formatPointer","argumentPointer","result","argument","i","r","instruction","quantifier","word","precisionBits","exponentBits","extraNullCount","bias","minExp","maxExp","minUnnormExp","status","exp","len","bin","signal","n","intPart","floatPart","lastBit","rounded","j","k","tmpResult","length","charAt","match","arguments","Error","String","fromCharCode","msg","parseInt","Math","pow","isNaN","parseFloat","Infinity","Array","abs","floor","key","slice","join","substring","msg2"],"mappings":"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","file":"pack.js","sourcesContent":["module.exports = function pack (format) {\n // discuss at: https://locutus.io/php/pack/\n // original by: Tim de Koning (https://www.kingsquare.nl)\n // parts by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // bugfixed by: Tim de Koning (https://www.kingsquare.nl)\n // note 1: Float encoding by: Jonas Raoni Soares Silva\n // note 1: Home: https://www.kingsquare.nl/blog/12-12-2009/13507444\n // note 1: Feedback: phpjs-pack@kingsquare.nl\n // note 1: \"machine dependent byte order and size\" aren't\n // note 1: applicable for JavaScript; pack works as on a 32bit,\n // note 1: little endian machine.\n // example 1: pack('nvc*', 0x1234, 0x5678, 65, 66)\n // returns 1: '\\u00124xVAB'\n // example 2: pack('H4', '2345')\n // returns 2: '#E'\n // example 3: pack('H*', 'D5')\n // returns 3: 'Õ'\n // example 4: pack('d', -100.876)\n // returns 4: \"\\u0000\\u0000\\u0000\\u0000\\u00008YÀ\"\n // test: skip-1\n\n let formatPointer = 0\n let argumentPointer = 1\n let result = ''\n let argument = ''\n let i = 0\n let r = []\n let instruction, quantifier, word, precisionBits, exponentBits, extraNullCount\n\n // vars used by float encoding\n let bias\n let minExp\n let maxExp\n let minUnnormExp\n let status\n let exp\n let len\n let bin\n let signal\n let n\n let intPart\n let floatPart\n let lastBit\n let rounded\n let j\n let k\n let tmpResult\n\n while (formatPointer < format.length) {\n instruction = format.charAt(formatPointer)\n quantifier = ''\n formatPointer++\n while ((formatPointer < format.length) && (format.charAt(formatPointer)\n .match(/[\\d*]/) !== null)) {\n quantifier += format.charAt(formatPointer)\n formatPointer++\n }\n if (quantifier === '') {\n quantifier = '1'\n }\n\n // Now pack variables: 'quantifier' times 'instruction'\n switch (instruction) {\n case 'a':\n case 'A':\n // NUL-padded string\n // SPACE-padded string\n if (typeof arguments[argumentPointer] === 'undefined') {\n throw new Error('Warning: pack() Type ' + instruction + ': not enough arguments')\n } else {\n argument = String(arguments[argumentPointer])\n }\n if (quantifier === '*') {\n quantifier = argument.length\n }\n for (i = 0; i < quantifier; i++) {\n if (typeof argument[i] === 'undefined') {\n if (instruction === 'a') {\n result += String.fromCharCode(0)\n } else {\n result += ' '\n }\n } else {\n result += argument[i]\n }\n }\n argumentPointer++\n break\n case 'h':\n case 'H':\n // Hex string, low nibble first\n // Hex string, high nibble first\n if (typeof arguments[argumentPointer] === 'undefined') {\n throw new Error('Warning: pack() Type ' + instruction + ': not enough arguments')\n } else {\n argument = arguments[argumentPointer]\n }\n if (quantifier === '*') {\n quantifier = argument.length\n }\n if (quantifier > argument.length) {\n const msg = 'Warning: pack() Type ' + instruction + ': not enough characters in string'\n throw new Error(msg)\n }\n\n for (i = 0; i < quantifier; i += 2) {\n // Always get per 2 bytes...\n word = argument[i]\n if (((i + 1) >= quantifier) || typeof argument[i + 1] === 'undefined') {\n word += '0'\n } else {\n word += argument[i + 1]\n }\n // The fastest way to reverse?\n if (instruction === 'h') {\n word = word[1] + word[0]\n }\n result += String.fromCharCode(parseInt(word, 16))\n }\n argumentPointer++\n break\n\n case 'c':\n case 'C':\n // signed char\n // unsigned char\n // c and C is the same in pack\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > (arguments.length - argumentPointer)) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer])\n argumentPointer++\n }\n break\n\n case 's':\n case 'S':\n case 'v':\n // signed short (always 16 bit, machine byte order)\n // unsigned short (always 16 bit, machine byte order)\n // s and S is the same in pack\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > (arguments.length - argumentPointer)) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer] & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] >> 8 & 0xFF)\n argumentPointer++\n }\n break\n\n case 'n':\n // unsigned short (always 16 bit, big endian byte order)\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > (arguments.length - argumentPointer)) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer] >> 8 & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] & 0xFF)\n argumentPointer++\n }\n break\n\n case 'i':\n case 'I':\n case 'l':\n case 'L':\n case 'V':\n // signed integer (machine dependent size and byte order)\n // unsigned integer (machine dependent size and byte order)\n // signed long (always 32 bit, machine byte order)\n // unsigned long (always 32 bit, machine byte order)\n // unsigned long (always 32 bit, little endian byte order)\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > (arguments.length - argumentPointer)) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer] & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] >> 8 & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] >> 16 & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] >> 24 & 0xFF)\n argumentPointer++\n }\n\n break\n case 'N':\n // unsigned long (always 32 bit, big endian byte order)\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > (arguments.length - argumentPointer)) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer] >> 24 & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] >> 16 & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] >> 8 & 0xFF)\n result += String.fromCharCode(arguments[argumentPointer] & 0xFF)\n argumentPointer++\n }\n break\n\n case 'f':\n case 'd':\n // float (machine dependent size and representation)\n // double (machine dependent size and representation)\n // version based on IEEE754\n precisionBits = 23\n exponentBits = 8\n if (instruction === 'd') {\n precisionBits = 52\n exponentBits = 11\n }\n\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > (arguments.length - argumentPointer)) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n for (i = 0; i < quantifier; i++) {\n argument = arguments[argumentPointer]\n bias = Math.pow(2, exponentBits - 1) - 1\n minExp = -bias + 1\n maxExp = bias\n minUnnormExp = minExp - precisionBits\n status = isNaN(n = parseFloat(argument)) || n === -Infinity || n === +Infinity ? n : 0\n exp = 0\n len = 2 * bias + 1 + precisionBits + 3\n bin = new Array(len)\n signal = (n = status !== 0 ? 0 : n) < 0\n n = Math.abs(n)\n intPart = Math.floor(n)\n floatPart = n - intPart\n\n for (k = len; k;) {\n bin[--k] = 0\n }\n for (k = bias + 2; intPart && k;) {\n bin[--k] = intPart % 2\n intPart = Math.floor(intPart / 2)\n }\n for (k = bias + 1; floatPart > 0 && k; --floatPart) {\n (bin[++k] = ((floatPart *= 2) >= 1) - 0)\n }\n for (k = -1; ++k < len && !bin[k];) {}\n\n // @todo: Make this more readable:\n const key = (lastBit = precisionBits - 1 +\n (k =\n (exp = bias + 1 - k) >= minExp &&\n exp <= maxExp ? k + 1 : bias + 1 - (exp = minExp - 1))) + 1\n\n if (bin[key]) {\n if (!(rounded = bin[lastBit])) {\n for (j = lastBit + 2; !rounded && j < len; rounded = bin[j++]) {}\n }\n for (j = lastBit + 1; rounded && --j >= 0;\n (bin[j] = !bin[j] - 0) && (rounded = 0)) {}\n }\n\n for (k = k - 2 < 0 ? -1 : k - 3; ++k < len && !bin[k];) {}\n\n if ((exp = bias + 1 - k) >= minExp && exp <= maxExp) {\n ++k\n } else {\n if (exp < minExp) {\n if (exp !== bias + 1 - len && exp < minUnnormExp) {\n // \"encodeFloat::float underflow\"\n }\n k = bias + 1 - (exp = minExp - 1)\n }\n }\n\n if (intPart || status !== 0) {\n exp = maxExp + 1\n k = bias + 2\n if (status === -Infinity) {\n signal = 1\n } else if (isNaN(status)) {\n bin[k] = 1\n }\n }\n\n n = Math.abs(exp + bias)\n tmpResult = ''\n\n for (j = exponentBits + 1; --j;) {\n tmpResult = (n % 2) + tmpResult\n n = n >>= 1\n }\n\n n = 0\n j = 0\n k = (tmpResult = (signal ? '1' : '0') + tmpResult + (bin\n .slice(k, k + precisionBits)\n .join(''))\n ).length\n r = []\n\n for (; k;) {\n n += (1 << j) * tmpResult.charAt(--k)\n if (j === 7) {\n r[r.length] = String.fromCharCode(n)\n n = 0\n }\n j = (j + 1) % 8\n }\n\n r[r.length] = n ? String.fromCharCode(n) : ''\n result += r.join('')\n argumentPointer++\n }\n break\n\n case 'x':\n // NUL byte\n if (quantifier === '*') {\n throw new Error('Warning: pack(): Type x: \\'*\\' ignored')\n }\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(0)\n }\n break\n\n case 'X':\n // Back up one byte\n if (quantifier === '*') {\n throw new Error('Warning: pack(): Type X: \\'*\\' ignored')\n }\n for (i = 0; i < quantifier; i++) {\n if (result.length === 0) {\n throw new Error('Warning: pack(): Type X:' + ' outside of string')\n } else {\n result = result.substring(0, result.length - 1)\n }\n }\n break\n\n case '@':\n // NUL-fill to absolute position\n if (quantifier === '*') {\n throw new Error('Warning: pack(): Type X: \\'*\\' ignored')\n }\n if (quantifier > result.length) {\n extraNullCount = quantifier - result.length\n for (i = 0; i < extraNullCount; i++) {\n result += String.fromCharCode(0)\n }\n }\n if (quantifier < result.length) {\n result = result.substring(0, quantifier)\n }\n break\n\n default:\n throw new Error('Warning: pack() Type ' + instruction + ': unknown format code')\n }\n }\n if (argumentPointer < arguments.length) {\n const msg2 = 'Warning: pack(): ' + (arguments.length - argumentPointer) + ' arguments unused'\n throw new Error(msg2)\n }\n\n return result\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/php/misc/pack.js"],"names":["module","exports","pack","format","formatPointer","argumentPointer","result","argument","i","r","instruction","quantifier","word","precisionBits","exponentBits","extraNullCount","bias","minExp","maxExp","minUnnormExp","status","exp","len","bin","signal","n","intPart","floatPart","lastBit","rounded","j","k","tmpResult","length","charAt","match","arguments","Error","String","fromCharCode","msg","parseInt","Math","pow","isNaN","parseFloat","Infinity","Array","abs","floor","key","slice","join","substring","msg2"],"mappings":"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","file":"pack.js","sourcesContent":["module.exports = function pack(format) {\n // discuss at: https://locutus.io/php/pack/\n // original by: Tim de Koning (https://www.kingsquare.nl)\n // parts by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // bugfixed by: Tim de Koning (https://www.kingsquare.nl)\n // note 1: Float encoding by: Jonas Raoni Soares Silva\n // note 1: Home: https://www.kingsquare.nl/blog/12-12-2009/13507444\n // note 1: Feedback: phpjs-pack@kingsquare.nl\n // note 1: \"machine dependent byte order and size\" aren't\n // note 1: applicable for JavaScript; pack works as on a 32bit,\n // note 1: little endian machine.\n // example 1: pack('nvc*', 0x1234, 0x5678, 65, 66)\n // returns 1: '\\u00124xVAB'\n // example 2: pack('H4', '2345')\n // returns 2: '#E'\n // example 3: pack('H*', 'D5')\n // returns 3: 'Õ'\n // example 4: pack('d', -100.876)\n // returns 4: \"\\u0000\\u0000\\u0000\\u0000\\u00008YÀ\"\n // test: skip-1\n\n let formatPointer = 0\n let argumentPointer = 1\n let result = ''\n let argument = ''\n let i = 0\n let r = []\n let instruction, quantifier, word, precisionBits, exponentBits, extraNullCount\n\n // vars used by float encoding\n let bias\n let minExp\n let maxExp\n let minUnnormExp\n let status\n let exp\n let len\n let bin\n let signal\n let n\n let intPart\n let floatPart\n let lastBit\n let rounded\n let j\n let k\n let tmpResult\n\n while (formatPointer < format.length) {\n instruction = format.charAt(formatPointer)\n quantifier = ''\n formatPointer++\n while (formatPointer < format.length && format.charAt(formatPointer).match(/[\\d*]/) !== null) {\n quantifier += format.charAt(formatPointer)\n formatPointer++\n }\n if (quantifier === '') {\n quantifier = '1'\n }\n\n // Now pack variables: 'quantifier' times 'instruction'\n switch (instruction) {\n case 'a':\n case 'A':\n // NUL-padded string\n // SPACE-padded string\n if (typeof arguments[argumentPointer] === 'undefined') {\n throw new Error('Warning: pack() Type ' + instruction + ': not enough arguments')\n } else {\n argument = String(arguments[argumentPointer])\n }\n if (quantifier === '*') {\n quantifier = argument.length\n }\n for (i = 0; i < quantifier; i++) {\n if (typeof argument[i] === 'undefined') {\n if (instruction === 'a') {\n result += String.fromCharCode(0)\n } else {\n result += ' '\n }\n } else {\n result += argument[i]\n }\n }\n argumentPointer++\n break\n case 'h':\n case 'H':\n // Hex string, low nibble first\n // Hex string, high nibble first\n if (typeof arguments[argumentPointer] === 'undefined') {\n throw new Error('Warning: pack() Type ' + instruction + ': not enough arguments')\n } else {\n argument = arguments[argumentPointer]\n }\n if (quantifier === '*') {\n quantifier = argument.length\n }\n if (quantifier > argument.length) {\n const msg = 'Warning: pack() Type ' + instruction + ': not enough characters in string'\n throw new Error(msg)\n }\n\n for (i = 0; i < quantifier; i += 2) {\n // Always get per 2 bytes...\n word = argument[i]\n if (i + 1 >= quantifier || typeof argument[i + 1] === 'undefined') {\n word += '0'\n } else {\n word += argument[i + 1]\n }\n // The fastest way to reverse?\n if (instruction === 'h') {\n word = word[1] + word[0]\n }\n result += String.fromCharCode(parseInt(word, 16))\n }\n argumentPointer++\n break\n\n case 'c':\n case 'C':\n // signed char\n // unsigned char\n // c and C is the same in pack\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > arguments.length - argumentPointer) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer])\n argumentPointer++\n }\n break\n\n case 's':\n case 'S':\n case 'v':\n // signed short (always 16 bit, machine byte order)\n // unsigned short (always 16 bit, machine byte order)\n // s and S is the same in pack\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > arguments.length - argumentPointer) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer] & 0xff)\n result += String.fromCharCode((arguments[argumentPointer] >> 8) & 0xff)\n argumentPointer++\n }\n break\n\n case 'n':\n // unsigned short (always 16 bit, big endian byte order)\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > arguments.length - argumentPointer) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode((arguments[argumentPointer] >> 8) & 0xff)\n result += String.fromCharCode(arguments[argumentPointer] & 0xff)\n argumentPointer++\n }\n break\n\n case 'i':\n case 'I':\n case 'l':\n case 'L':\n case 'V':\n // signed integer (machine dependent size and byte order)\n // unsigned integer (machine dependent size and byte order)\n // signed long (always 32 bit, machine byte order)\n // unsigned long (always 32 bit, machine byte order)\n // unsigned long (always 32 bit, little endian byte order)\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > arguments.length - argumentPointer) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(arguments[argumentPointer] & 0xff)\n result += String.fromCharCode((arguments[argumentPointer] >> 8) & 0xff)\n result += String.fromCharCode((arguments[argumentPointer] >> 16) & 0xff)\n result += String.fromCharCode((arguments[argumentPointer] >> 24) & 0xff)\n argumentPointer++\n }\n\n break\n case 'N':\n // unsigned long (always 32 bit, big endian byte order)\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > arguments.length - argumentPointer) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode((arguments[argumentPointer] >> 24) & 0xff)\n result += String.fromCharCode((arguments[argumentPointer] >> 16) & 0xff)\n result += String.fromCharCode((arguments[argumentPointer] >> 8) & 0xff)\n result += String.fromCharCode(arguments[argumentPointer] & 0xff)\n argumentPointer++\n }\n break\n\n case 'f':\n case 'd':\n // float (machine dependent size and representation)\n // double (machine dependent size and representation)\n // version based on IEEE754\n precisionBits = 23\n exponentBits = 8\n if (instruction === 'd') {\n precisionBits = 52\n exponentBits = 11\n }\n\n if (quantifier === '*') {\n quantifier = arguments.length - argumentPointer\n }\n if (quantifier > arguments.length - argumentPointer) {\n throw new Error('Warning: pack() Type ' + instruction + ': too few arguments')\n }\n for (i = 0; i < quantifier; i++) {\n argument = arguments[argumentPointer]\n bias = Math.pow(2, exponentBits - 1) - 1\n minExp = -bias + 1\n maxExp = bias\n minUnnormExp = minExp - precisionBits\n status = isNaN((n = parseFloat(argument))) || n === -Infinity || n === +Infinity ? n : 0\n exp = 0\n len = 2 * bias + 1 + precisionBits + 3\n bin = new Array(len)\n signal = (n = status !== 0 ? 0 : n) < 0\n n = Math.abs(n)\n intPart = Math.floor(n)\n floatPart = n - intPart\n\n for (k = len; k; ) {\n bin[--k] = 0\n }\n for (k = bias + 2; intPart && k; ) {\n bin[--k] = intPart % 2\n intPart = Math.floor(intPart / 2)\n }\n for (k = bias + 1; floatPart > 0 && k; --floatPart) {\n bin[++k] = ((floatPart *= 2) >= 1) - 0\n }\n for (k = -1; ++k < len && !bin[k]; ) {}\n\n // @todo: Make this more readable:\n const key =\n (lastBit =\n precisionBits -\n 1 +\n (k = (exp = bias + 1 - k) >= minExp && exp <= maxExp ? k + 1 : bias + 1 - (exp = minExp - 1))) + 1\n\n if (bin[key]) {\n if (!(rounded = bin[lastBit])) {\n for (j = lastBit + 2; !rounded && j < len; rounded = bin[j++]) {}\n }\n for (j = lastBit + 1; rounded && --j >= 0; (bin[j] = !bin[j] - 0) && (rounded = 0)) {}\n }\n\n for (k = k - 2 < 0 ? -1 : k - 3; ++k < len && !bin[k]; ) {}\n\n if ((exp = bias + 1 - k) >= minExp && exp <= maxExp) {\n ++k\n } else {\n if (exp < minExp) {\n if (exp !== bias + 1 - len && exp < minUnnormExp) {\n // \"encodeFloat::float underflow\"\n }\n k = bias + 1 - (exp = minExp - 1)\n }\n }\n\n if (intPart || status !== 0) {\n exp = maxExp + 1\n k = bias + 2\n if (status === -Infinity) {\n signal = 1\n } else if (isNaN(status)) {\n bin[k] = 1\n }\n }\n\n n = Math.abs(exp + bias)\n tmpResult = ''\n\n for (j = exponentBits + 1; --j; ) {\n tmpResult = (n % 2) + tmpResult\n n = n >>= 1\n }\n\n n = 0\n j = 0\n k = (tmpResult = (signal ? '1' : '0') + tmpResult + bin.slice(k, k + precisionBits).join('')).length\n r = []\n\n for (; k; ) {\n n += (1 << j) * tmpResult.charAt(--k)\n if (j === 7) {\n r[r.length] = String.fromCharCode(n)\n n = 0\n }\n j = (j + 1) % 8\n }\n\n r[r.length] = n ? String.fromCharCode(n) : ''\n result += r.join('')\n argumentPointer++\n }\n break\n\n case 'x':\n // NUL byte\n if (quantifier === '*') {\n throw new Error(\"Warning: pack(): Type x: '*' ignored\")\n }\n for (i = 0; i < quantifier; i++) {\n result += String.fromCharCode(0)\n }\n break\n\n case 'X':\n // Back up one byte\n if (quantifier === '*') {\n throw new Error(\"Warning: pack(): Type X: '*' ignored\")\n }\n for (i = 0; i < quantifier; i++) {\n if (result.length === 0) {\n throw new Error('Warning: pack(): Type X:' + ' outside of string')\n } else {\n result = result.substring(0, result.length - 1)\n }\n }\n break\n\n case '@':\n // NUL-fill to absolute position\n if (quantifier === '*') {\n throw new Error(\"Warning: pack(): Type X: '*' ignored\")\n }\n if (quantifier > result.length) {\n extraNullCount = quantifier - result.length\n for (i = 0; i < extraNullCount; i++) {\n result += String.fromCharCode(0)\n }\n }\n if (quantifier < result.length) {\n result = result.substring(0, quantifier)\n }\n break\n\n default:\n throw new Error('Warning: pack() Type ' + instruction + ': unknown format code')\n }\n }\n if (argumentPointer < arguments.length) {\n const msg2 = 'Warning: pack(): ' + (arguments.length - argumentPointer) + ' arguments unused'\n throw new Error(msg2)\n }\n\n return result\n}\n"]}
|
package/php/misc/uniqid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/misc/uniqid.js"],"names":["module","exports","uniqid","prefix","moreEntropy","retId","_formatSeed","seed","reqWidth","parseInt","toString","length","slice","Array","join","$global","window","global","$locutus","php","uniqidSeed","Math","floor","random","Date","getTime","toFixed"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,MAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/misc/uniqid.js"],"names":["module","exports","uniqid","prefix","moreEntropy","retId","_formatSeed","seed","reqWidth","parseInt","toString","length","slice","Array","join","$global","window","global","$locutus","php","uniqidSeed","Math","floor","random","Date","getTime","toFixed"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,MAAT,CAAgBC,MAAhB,EAAwBC,WAAxB,EAAqC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAI,OAAOD,MAAP,KAAkB,WAAtB,EAAmC;AACjCA,aAAS,EAAT;AACD;;AAED,MAAIE,cAAJ;AACA,MAAMC,cAAc,SAAdA,WAAc,CAAUC,IAAV,EAAgBC,QAAhB,EAA0B;AAC5CD,WAAOE,SAASF,IAAT,EAAe,EAAf,EAAmBG,QAAnB,CAA4B,EAA5B,CAAP,CAD4C,CACL;AACvC,QAAIF,WAAWD,KAAKI,MAApB,EAA4B;AAC1B;AACA,aAAOJ,KAAKK,KAAL,CAAWL,KAAKI,MAAL,GAAcH,QAAzB,CAAP;AACD;AACD,QAAIA,WAAWD,KAAKI,MAApB,EAA4B;AAC1B;AACA,aAAOE,MAAM,KAAKL,WAAWD,KAAKI,MAArB,CAAN,EAAoCG,IAApC,CAAyC,GAAzC,IAAgDP,IAAvD;AACD;AACD,WAAOA,IAAP;AACD,GAXD;;AAaA,MAAMQ,UAAU,OAAOC,MAAP,KAAkB,WAAlB,GAAgCA,MAAhC,GAAyCC,MAAzD;AACAF,UAAQG,QAAR,GAAmBH,QAAQG,QAAR,IAAoB,EAAvC;AACA,MAAMA,WAAWH,QAAQG,QAAzB;AACAA,WAASC,GAAT,GAAeD,SAASC,GAAT,IAAgB,EAA/B;;AAEA,MAAI,CAACD,SAASC,GAAT,CAAaC,UAAlB,EAA8B;AAC5B;AACAF,aAASC,GAAT,CAAaC,UAAb,GAA0BC,KAAKC,KAAL,CAAWD,KAAKE,MAAL,KAAgB,SAA3B,CAA1B;AACD;AACDL,WAASC,GAAT,CAAaC,UAAb;;AAEA;AACAf,UAAQF,MAAR;AACAE,WAASC,YAAYG,SAAS,IAAIe,IAAJ,GAAWC,OAAX,KAAuB,IAAhC,EAAsC,EAAtC,CAAZ,EAAuD,CAAvD,CAAT;AACA;AACApB,WAASC,YAAYY,SAASC,GAAT,CAAaC,UAAzB,EAAqC,CAArC,CAAT;AACA,MAAIhB,WAAJ,EAAiB;AACf;AACAC,aAAS,CAACgB,KAAKE,MAAL,KAAgB,EAAjB,EAAqBG,OAArB,CAA6B,CAA7B,EAAgChB,QAAhC,EAAT;AACD;;AAED,SAAOL,KAAP;AACD,CAvDD","file":"uniqid.js","sourcesContent":["module.exports = function uniqid(prefix, moreEntropy) {\n // discuss at: https://locutus.io/php/uniqid/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // revised by: Kankrelune (https://www.webfaktory.info/)\n // note 1: Uses an internal counter (in locutus global) to avoid collision\n // example 1: var $id = uniqid()\n // example 1: var $result = $id.length === 13\n // returns 1: true\n // example 2: var $id = uniqid('foo')\n // example 2: var $result = $id.length === (13 + 'foo'.length)\n // returns 2: true\n // example 3: var $id = uniqid('bar', true)\n // example 3: var $result = $id.length === (23 + 'bar'.length)\n // returns 3: true\n\n if (typeof prefix === 'undefined') {\n prefix = ''\n }\n\n let retId\n const _formatSeed = function (seed, reqWidth) {\n seed = parseInt(seed, 10).toString(16) // to hex str\n if (reqWidth < seed.length) {\n // so long we split\n return seed.slice(seed.length - reqWidth)\n }\n if (reqWidth > seed.length) {\n // so short we pad\n return Array(1 + (reqWidth - seed.length)).join('0') + seed\n }\n return seed\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 (!$locutus.php.uniqidSeed) {\n // init seed with big random int\n $locutus.php.uniqidSeed = Math.floor(Math.random() * 0x75bcd15)\n }\n $locutus.php.uniqidSeed++\n\n // start with prefix, add current milliseconds hex string\n retId = prefix\n retId += _formatSeed(parseInt(new Date().getTime() / 1000, 10), 8)\n // add seed hex string\n retId += _formatSeed($locutus.php.uniqidSeed, 5)\n if (moreEntropy) {\n // for more entropy we add a float lower to 10\n retId += (Math.random() * 10).toFixed(8).toString()\n }\n\n return retId\n}\n"]}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
module.exports = function gopher_parsedir(dirent) {
|
|
4
|
-
// eslint-disable-line camelcase
|
|
5
4
|
// discuss at: https://locutus.io/php/gopher_parsedir/
|
|
6
5
|
// original by: Brett Zamir (https://brett-zamir.me)
|
|
7
6
|
// example 1: var entry = gopher_parsedir('0All about my gopher site.\t/allabout.txt\tgopher.example.com\t70\u000d\u000a')
|
|
@@ -70,9 +69,8 @@ module.exports = function gopher_parsedir(dirent) {
|
|
|
70
69
|
default:
|
|
71
70
|
return {
|
|
72
71
|
type: -1,
|
|
73
|
-
data: dirent
|
|
74
|
-
};
|
|
75
|
-
}
|
|
72
|
+
data: dirent // GOPHER_UNKNOWN
|
|
73
|
+
};}
|
|
76
74
|
return {
|
|
77
75
|
type: type,
|
|
78
76
|
title: entry[2],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/net-gopher/gopher_parsedir.js"],"names":["module","exports","gopher_parsedir","dirent","entryPattern","entry","match","Error","type","data","title","path","host","port"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,eAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/net-gopher/gopher_parsedir.js"],"names":["module","exports","gopher_parsedir","dirent","entryPattern","entry","match","Error","type","data","title","path","host","port"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,eAAT,CAAyBC,MAAzB,EAAiC;AAChD;AACA;AACA;AACA;AACA;;AAEA;;;;;;;;;;;;;;;;;AAiBA,MAAMC,eAAe,iDAArB;AACA,MAAMC,QAAQF,OAAOG,KAAP,CAAaF,YAAb,CAAd;;AAEA,MAAIC,UAAU,IAAd,EAAoB;AAClB,UAAM,IAAIE,KAAJ,CAAU,qCAAV,CAAN;AACA;AACD;;AAED,MAAIC,OAAOH,MAAM,CAAN,CAAX;AACA,UAAQG,IAAR;AACE,SAAK,GAAL;AACE;AACAA,aAAO,GAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,CAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,CAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,CAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,CAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,CAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,CAAP;AACA;AACF,SAAK,GAAL;AACE;AACAA,aAAO,GAAP;AACA;AACF;AACE,aAAO;AACLA,cAAM,CAAC,CADF;AAELC,cAAMN,MAFD,CAGL;AAHK,OAAP,CAlCJ;AAuCA,SAAO;AACLK,cADK;AAELE,WAAOL,MAAM,CAAN,CAFF;AAGLM,UAAMN,MAAM,CAAN,CAHD;AAILO,UAAMP,MAAM,CAAN,CAJD;AAKLQ,UAAMR,MAAM,CAAN;AALD,GAAP;AAOD,CA/ED","file":"gopher_parsedir.js","sourcesContent":["module.exports = function gopher_parsedir(dirent) {\n // discuss at: https://locutus.io/php/gopher_parsedir/\n // original by: Brett Zamir (https://brett-zamir.me)\n // example 1: var entry = gopher_parsedir('0All about my gopher site.\\t/allabout.txt\\tgopher.example.com\\t70\\u000d\\u000a')\n // example 1: entry.title\n // returns 1: 'All about my gopher site.'\n\n /* Types\n * 0 = plain text file\n * 1 = directory menu listing\n * 2 = CSO search query\n * 3 = error message\n * 4 = BinHex encoded text file\n * 5 = binary archive file\n * 6 = UUEncoded text file\n * 7 = search engine query\n * 8 = telnet session pointer\n * 9 = binary file\n * g = Graphics file format, primarily a GIF file\n * h = HTML file\n * i = informational message\n * s = Audio file format, primarily a WAV file\n */\n\n const entryPattern = /^(.)([^\\t]*)\\t([^\\t]*)\\t([^\\t]*)\\t([^\\t]*)\\r\\n$/\n const entry = dirent.match(entryPattern)\n\n if (entry === null) {\n throw new Error('Could not parse the directory entry')\n // return false;\n }\n\n let type = entry[1]\n switch (type) {\n case 'i':\n // GOPHER_INFO\n type = 255\n break\n case '1':\n // GOPHER_DIRECTORY\n type = 1\n break\n case '0':\n // GOPHER_DOCUMENT\n type = 0\n break\n case '4':\n // GOPHER_BINHEX\n type = 4\n break\n case '5':\n // GOPHER_DOSBINARY\n type = 5\n break\n case '6':\n // GOPHER_UUENCODED\n type = 6\n break\n case '9':\n // GOPHER_BINARY\n type = 9\n break\n case 'h':\n // GOPHER_HTTP\n type = 254\n break\n default:\n return {\n type: -1,\n data: dirent,\n } // GOPHER_UNKNOWN\n }\n return {\n type,\n title: entry[2],\n path: entry[3],\n host: entry[4],\n port: entry[5],\n }\n}\n"]}
|
package/php/network/inet_ntop.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/network/inet_ntop.js"],"names":["module","exports","inet_ntop","a","i","m","c","length","charCodeAt","join","push","toString","replace","t"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,SAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/network/inet_ntop.js"],"names":["module","exports","inet_ntop","a","i","m","c","length","charCodeAt","join","push","toString","replace","t"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,SAAT,CAAmBC,CAAnB,EAAsB;AACrC;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,IAAI,CAAR;AACA,MAAIC,IAAI,EAAR;AACA,MAAMC,IAAI,EAAV;;AAEAH,OAAK,EAAL;AACA,MAAIA,EAAEI,MAAF,KAAa,CAAjB,EAAoB;AAClB;AACA,WAAO,CAACJ,EAAEK,UAAF,CAAa,CAAb,CAAD,EAAkBL,EAAEK,UAAF,CAAa,CAAb,CAAlB,EAAmCL,EAAEK,UAAF,CAAa,CAAb,CAAnC,EAAoDL,EAAEK,UAAF,CAAa,CAAb,CAApD,EAAqEC,IAArE,CAA0E,GAA1E,CAAP;AACD,GAHD,MAGO,IAAIN,EAAEI,MAAF,KAAa,EAAjB,EAAqB;AAC1B;AACA,SAAKH,IAAI,CAAT,EAAYA,IAAI,EAAhB,EAAoBA,GAApB,EAAyB;AACvBE,QAAEI,IAAF,CAAO,CAAC,CAACP,EAAEK,UAAF,CAAaJ,GAAb,KAAqB,CAAtB,IAA2BD,EAAEK,UAAF,CAAaJ,CAAb,CAA5B,EAA6CO,QAA7C,CAAsD,EAAtD,CAAP;AACD;AACD,WAAOL,EACJG,IADI,CACC,GADD,EAEJG,OAFI,CAEI,qBAFJ,EAE2B,UAAUC,CAAV,EAAa;AAC3CR,UAAIQ,EAAEN,MAAF,GAAWF,EAAEE,MAAb,GAAsBM,CAAtB,GAA0BR,CAA9B;AACA,aAAOQ,CAAP;AACD,KALI,EAMJD,OANI,CAMIP,KAAK,GANT,EAMc,IANd,CAAP;AAOD,GAZM,MAYA;AACL;AACA,WAAO,KAAP;AACD;AACF,CAhCD","file":"inet_ntop.js","sourcesContent":["module.exports = function inet_ntop(a) {\n // discuss at: https://locutus.io/php/inet_ntop/\n // original by: Theriault (https://github.com/Theriault)\n // example 1: inet_ntop('\\x7F\\x00\\x00\\x01')\n // returns 1: '127.0.0.1'\n // _example 2: inet_ntop('\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\1')\n // _returns 2: '::1'\n\n let i = 0\n let m = ''\n const c = []\n\n a += ''\n if (a.length === 4) {\n // IPv4\n return [a.charCodeAt(0), a.charCodeAt(1), a.charCodeAt(2), a.charCodeAt(3)].join('.')\n } else if (a.length === 16) {\n // IPv6\n for (i = 0; i < 16; i++) {\n c.push(((a.charCodeAt(i++) << 8) + a.charCodeAt(i)).toString(16))\n }\n return c\n .join(':')\n .replace(/((^|:)0(?=:|$))+:?/g, function (t) {\n m = t.length > m.length ? t : m\n return t\n })\n .replace(m || ' ', '::')\n } else {\n // Invalid length\n return false\n }\n}\n"]}
|
package/php/network/inet_pton.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
module.exports = function inet_pton(a) {
|
|
4
|
-
// eslint-disable-line camelcase
|
|
5
4
|
// discuss at: https://locutus.io/php/inet_pton/
|
|
6
5
|
// original by: Theriault (https://github.com/Theriault)
|
|
7
6
|
// improved by: alromh87 and JamieSlome
|
|
@@ -57,7 +56,7 @@ module.exports = function inet_pton(a) {
|
|
|
57
56
|
// Invalid IP.
|
|
58
57
|
return false;
|
|
59
58
|
}
|
|
60
|
-
m[j][i] = f(hextet >> 8, hextet &
|
|
59
|
+
m[j][i] = f(hextet >> 8, hextet & 0xff);
|
|
61
60
|
}
|
|
62
61
|
m[j] = m[j].join('');
|
|
63
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/network/inet_pton.js"],"names":["module","exports","inet_pton","a","m","i","j","f","String","fromCharCode","match","split","length","reHexDigits","hextet","test","parseInt","isNaN","join","repeat","reduce","tl"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,SAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/network/inet_pton.js"],"names":["module","exports","inet_pton","a","m","i","j","f","String","fromCharCode","match","split","length","reHexDigits","hextet","test","parseInt","isNaN","join","repeat","reduce","tl"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,SAAT,CAAmBC,CAAnB,EAAsB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,UAAJ;AACA,MAAIC,UAAJ;AACA,MAAIC,UAAJ;AACA,MAAMC,IAAIC,OAAOC,YAAjB;;AAEA;AACAL,MAAID,EAAEO,KAAF,CAAQ,yBAAR,CAAJ;AACA,MAAIN,CAAJ,EAAO;AACLA,QAAIA,EAAE,CAAF,EAAKO,KAAL,CAAW,GAAX,CAAJ;AACAP,QAAIG,EAAEH,EAAE,CAAF,CAAF,EAAQA,EAAE,CAAF,CAAR,EAAcA,EAAE,CAAF,CAAd,EAAoBA,EAAE,CAAF,CAApB,CAAJ;AACA;AACA,WAAOA,EAAEQ,MAAF,KAAa,CAAb,GAAiBR,CAAjB,GAAqB,KAA5B;AACD;;AAED;AACA,MAAID,EAAES,MAAF,GAAW,EAAf,EAAmB;AACjB,WAAO,KAAP;AACD;;AAEDR,MAAID,EAAEQ,KAAF,CAAQ,IAAR,CAAJ;;AAEA,MAAIP,EAAEQ,MAAF,GAAW,CAAf,EAAkB;AAChB,WAAO,KAAP;AACD,GAhCoC,CAgCnC;;AAEF,MAAMC,cAAc,iBAApB;;AAEA,OAAKP,IAAI,CAAT,EAAYA,IAAIF,EAAEQ,MAAlB,EAA0BN,GAA1B,EAA+B;AAC7B,QAAIF,EAAEE,CAAF,EAAKM,MAAL,KAAgB,CAApB,EAAuB;AACrB;AACA;AACD;AACDR,MAAEE,CAAF,IAAOF,EAAEE,CAAF,EAAKK,KAAL,CAAW,GAAX,CAAP;AACA,SAAKN,IAAI,CAAT,EAAYA,IAAID,EAAEE,CAAF,EAAKM,MAArB,EAA6BP,GAA7B,EAAkC;AAChC,UAAIS,SAASV,EAAEE,CAAF,EAAKD,CAAL,CAAb;AACA;AACA,UAAI,CAACQ,YAAYE,IAAZ,CAAiBD,MAAjB,CAAL,EAA+B;AAC7B,eAAO,KAAP;AACD;;AAEDA,eAASE,SAASF,MAAT,EAAiB,EAAjB,CAAT;;AAEA;AACA,UAAIG,MAAMH,MAAN,CAAJ,EAAmB;AACjB;AACA,eAAO,KAAP;AACD;AACDV,QAAEE,CAAF,EAAKD,CAAL,IAAUE,EAAEO,UAAU,CAAZ,EAAeA,SAAS,IAAxB,CAAV;AACD;AACDV,MAAEE,CAAF,IAAOF,EAAEE,CAAF,EAAKY,IAAL,CAAU,EAAV,CAAP;AACD;;AAED,SAAOd,EAAEc,IAAF,CAAO,OAAOC,MAAP,CAAc,KAAKf,EAAEgB,MAAF,CAAS,UAACC,EAAD,EAAKjB,CAAL;AAAA,WAAWiB,KAAKjB,EAAEQ,MAAlB;AAAA,GAAT,EAAmC,CAAnC,CAAnB,CAAP,CAAP;AACD,CA9DD","file":"inet_pton.js","sourcesContent":["module.exports = function inet_pton(a) {\n // discuss at: https://locutus.io/php/inet_pton/\n // original by: Theriault (https://github.com/Theriault)\n // improved by: alromh87 and JamieSlome\n // example 1: inet_pton('::')\n // returns 1: '\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0'\n // example 2: inet_pton('127.0.0.1')\n // returns 2: '\\x7F\\x00\\x00\\x01'\n\n let m\n let i\n let j\n const f = String.fromCharCode\n\n // IPv4\n m = a.match(/^(?:\\d{1,3}(?:\\.|$)){4}/)\n if (m) {\n m = m[0].split('.')\n m = f(m[0], m[1], m[2], m[3])\n // Return if 4 bytes, otherwise false.\n return m.length === 4 ? m : false\n }\n\n // IPv6\n if (a.length > 39) {\n return false\n }\n\n m = a.split('::')\n\n if (m.length > 2) {\n return false\n } // :: can't be used more than once in IPv6.\n\n const reHexDigits = /^[\\da-f]{1,4}$/i\n\n for (j = 0; j < m.length; j++) {\n if (m[j].length === 0) {\n // Skip if empty.\n continue\n }\n m[j] = m[j].split(':')\n for (i = 0; i < m[j].length; i++) {\n let hextet = m[j][i]\n // check if valid hex string up to 4 chars\n if (!reHexDigits.test(hextet)) {\n return false\n }\n\n hextet = parseInt(hextet, 16)\n\n // Would be NaN if it was blank, return false.\n if (isNaN(hextet)) {\n // Invalid IP.\n return false\n }\n m[j][i] = f(hextet >> 8, hextet & 0xff)\n }\n m[j] = m[j].join('')\n }\n\n return m.join('\\x00'.repeat(16 - m.reduce((tl, m) => tl + m.length, 0)))\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/network/ip2long.js"],"names":["module","exports","ip2long","argIP","i","pattern","RegExp","join","match","length","parseInt","push","Math","pow"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,OAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/network/ip2long.js"],"names":["module","exports","ip2long","argIP","i","pattern","RegExp","join","match","length","parseInt","push","Math","pow"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,OAAT,CAAiBC,KAAjB,EAAwB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,IAAI,CAAR;AACA;AACA;;AAEA,MAAMC,UAAU,IAAIC,MAAJ,CACd,CACE,kCADF,EAEE,yCAFF,EAGE,yCAHF,EAIE,0CAJF,EAKEC,IALF,CAKO,EALP,CADc,EAOd,GAPc,CAAhB;;AAUAJ,UAAQA,MAAMK,KAAN,CAAYH,OAAZ,CAAR,CA5BuC,CA4BV;AAC7B,MAAI,CAACF,KAAL,EAAY;AACV;AACA,WAAO,KAAP;AACD;AACD;AACAA,QAAM,CAAN,IAAW,CAAX;AACA,OAAKC,IAAI,CAAT,EAAYA,IAAI,CAAhB,EAAmBA,KAAK,CAAxB,EAA2B;AACzBD,UAAM,CAAN,KAAY,CAAC,CAAC,CAACA,MAAMC,CAAN,KAAY,EAAb,EAAiBK,MAA/B;AACAN,UAAMC,CAAN,IAAWM,SAASP,MAAMC,CAAN,CAAT,KAAsB,CAAjC;AACD;AACD;AACA;AACAD,QAAMQ,IAAN,CAAW,GAAX,EAAgB,GAAhB,EAAqB,GAArB,EAA0B,GAA1B;AACA;AACAR,QAAM,IAAIA,MAAM,CAAN,CAAV,KAAuBS,KAAKC,GAAL,CAAS,GAAT,EAAc,IAAIV,MAAM,CAAN,CAAlB,CAAvB;AACA,MAAIA,MAAM,CAAN,KAAYA,MAAM,CAAN,CAAZ,IAAwBA,MAAM,CAAN,KAAYA,MAAM,CAAN,CAApC,IAAgDA,MAAM,CAAN,KAAYA,MAAM,CAAN,CAA5D,IAAwEA,MAAM,CAAN,KAAYA,MAAM,CAAN,CAAxF,EAAkG;AAChG,WAAO,KAAP;AACD;;AAED,SACEA,MAAM,CAAN,KAAYA,MAAM,CAAN,MAAa,CAAb,IAAkB,QAA9B,IACAA,MAAM,CAAN,KAAYA,MAAM,CAAN,KAAY,CAAZ,IAAiB,KAA7B,CADA,GAEAA,MAAM,CAAN,KAAYA,MAAM,CAAN,KAAY,CAAZ,IAAiB,GAA7B,CAFA,GAGAA,MAAM,CAAN,IAAW,CAJb;AAMD,CAtDD","file":"ip2long.js","sourcesContent":["module.exports = function ip2long(argIP) {\n // discuss at: https://locutus.io/php/ip2long/\n // original by: Waldo Malqui Silva (https://waldo.malqui.info)\n // improved by: Victor\n // revised by: fearphage (https://my.opera.com/fearphage/)\n // revised by: Theriault (https://github.com/Theriault)\n // estarget: es2015\n // example 1: ip2long('192.0.34.166')\n // returns 1: 3221234342\n // example 2: ip2long('0.0xABCDEF')\n // returns 2: 11259375\n // example 3: ip2long('255.255.255.256')\n // returns 3: false\n\n let i = 0\n // PHP allows decimal, octal, and hexadecimal IP components.\n // PHP allows between 1 (e.g. 127) to 4 (e.g 127.0.0.1) components.\n\n const pattern = new RegExp(\n [\n '^([1-9]\\\\d*|0[0-7]*|0x[\\\\da-f]+)',\n '(?:\\\\.([1-9]\\\\d*|0[0-7]*|0x[\\\\da-f]+))?',\n '(?:\\\\.([1-9]\\\\d*|0[0-7]*|0x[\\\\da-f]+))?',\n '(?:\\\\.([1-9]\\\\d*|0[0-7]*|0x[\\\\da-f]+))?$',\n ].join(''),\n 'i',\n )\n\n argIP = argIP.match(pattern) // Verify argIP format.\n if (!argIP) {\n // Invalid format.\n return false\n }\n // Reuse argIP variable for component counter.\n argIP[0] = 0\n for (i = 1; i < 5; i += 1) {\n argIP[0] += !!(argIP[i] || '').length\n argIP[i] = parseInt(argIP[i]) || 0\n }\n // Continue to use argIP for overflow values.\n // PHP does not allow any component to overflow.\n argIP.push(256, 256, 256, 256)\n // Recalculate overflow of last component supplied to make up for missing components.\n argIP[4 + argIP[0]] *= Math.pow(256, 4 - argIP[0])\n if (argIP[1] >= argIP[5] || argIP[2] >= argIP[6] || argIP[3] >= argIP[7] || argIP[4] >= argIP[8]) {\n return false\n }\n\n return (\n argIP[1] * (argIP[0] === 1 || 16777216) +\n argIP[2] * (argIP[0] <= 2 || 65536) +\n argIP[3] * (argIP[0] <= 3 || 256) +\n argIP[4] * 1\n )\n}\n"]}
|
package/php/network/long2ip.js
CHANGED
|
@@ -10,6 +10,6 @@ module.exports = function long2ip(ip) {
|
|
|
10
10
|
return false;
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
return [ip >>> 24 &
|
|
13
|
+
return [ip >>> 24 & 0xff, ip >>> 16 & 0xff, ip >>> 8 & 0xff, ip & 0xff].join('.');
|
|
14
14
|
};
|
|
15
15
|
//# sourceMappingURL=long2ip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/network/long2ip.js"],"names":["module","exports","long2ip","ip","isFinite","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,OAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/network/long2ip.js"],"names":["module","exports","long2ip","ip","isFinite","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,OAAT,CAAiBC,EAAjB,EAAqB;AACpC;AACA;AACA;AACA;;AAEA,MAAI,CAACC,SAASD,EAAT,CAAL,EAAmB;AACjB,WAAO,KAAP;AACD;;AAED,SAAO,CAAEA,OAAO,EAAR,GAAc,IAAf,EAAsBA,OAAO,EAAR,GAAc,IAAnC,EAA0CA,OAAO,CAAR,GAAa,IAAtD,EAA4DA,KAAK,IAAjE,EAAuEE,IAAvE,CAA4E,GAA5E,CAAP;AACD,CAXD","file":"long2ip.js","sourcesContent":["module.exports = function long2ip(ip) {\n // discuss at: https://locutus.io/php/long2ip/\n // original by: Waldo Malqui Silva (https://fayr.us/waldo/)\n // example 1: long2ip( 3221234342 )\n // returns 1: '192.0.34.166'\n\n if (!isFinite(ip)) {\n return false\n }\n\n return [(ip >>> 24) & 0xff, (ip >>> 16) & 0xff, (ip >>> 8) & 0xff, ip & 0xff].join('.')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/network/setcookie.js"],"names":["module","exports","setcookie","name","value","expires","path","domain","secure","setrawcookie","require","encodeURIComponent"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,SAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/network/setcookie.js"],"names":["module","exports","setcookie","name","value","expires","path","domain","secure","setrawcookie","require","encodeURIComponent"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,SAAT,CAAmBC,IAAnB,EAAyBC,KAAzB,EAAgCC,OAAhC,EAAyCC,IAAzC,EAA+CC,MAA/C,EAAuDC,MAAvD,EAA+D;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMC,eAAeC,QAAQ,yBAAR,CAArB;AACA,SAAOD,aAAaN,IAAb,EAAmBQ,mBAAmBP,KAAnB,CAAnB,EAA8CC,OAA9C,EAAuDC,IAAvD,EAA6DC,MAA7D,EAAqEC,MAArE,CAAP;AACD,CAXD","file":"setcookie.js","sourcesContent":["module.exports = function setcookie(name, value, expires, path, domain, secure) {\n // discuss at: https://locutus.io/php/setcookie/\n // original by: Jonas Raoni Soares Silva (https://www.jsfromhell.com)\n // bugfixed by: Andreas\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // example 1: setcookie('author_name', 'Kevin van Zonneveld')\n // returns 1: true\n\n const setrawcookie = require('../network/setrawcookie')\n return setrawcookie(name, encodeURIComponent(value), expires, path, domain, secure)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/network/setrawcookie.js"],"names":["module","exports","setrawcookie","name","value","expires","path","domain","secure","window","test","parseInt","Date","toUTCString","r","i","s","hasOwnProperty","push","document","cookie","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,YAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/network/setrawcookie.js"],"names":["module","exports","setrawcookie","name","value","expires","path","domain","secure","window","test","parseInt","Date","toUTCString","r","i","s","hasOwnProperty","push","document","cookie","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,YAAT,CAAsBC,IAAtB,EAA4BC,KAA5B,EAAmCC,OAAnC,EAA4CC,IAA5C,EAAkDC,MAAlD,EAA0DC,MAA1D,EAAkE;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;AACjC,WAAO,IAAP;AACD;;AAED,MAAI,OAAOJ,OAAP,KAAmB,QAAnB,IAA+B,QAAQK,IAAR,CAAaL,OAAb,CAAnC,EAA0D;AACxDA,cAAUM,SAASN,OAAT,EAAkB,EAAlB,CAAV;AACD;;AAED,MAAIA,mBAAmBO,IAAvB,EAA6B;AAC3BP,cAAUA,QAAQQ,WAAR,EAAV;AACD,GAFD,MAEO,IAAI,OAAOR,OAAP,KAAmB,QAAvB,EAAiC;AACtCA,cAAU,IAAIO,IAAJ,CAASP,UAAU,GAAnB,EAAwBQ,WAAxB,EAAV;AACD;;AAED,MAAMC,IAAI,CAACX,OAAO,GAAP,GAAaC,KAAd,CAAV;AACA,MAAIW,IAAI,EAAR;AACA,MAAMC,IAAI;AACRX,oBADQ;AAERC,cAFQ;AAGRC;AAHQ,GAAV;AAKA,OAAKQ,CAAL,IAAUC,CAAV,EAAa;AACX,QAAIA,EAAEC,cAAF,CAAiBF,CAAjB,CAAJ,EAAyB;AACvB;AACAC,QAAED,CAAF,KAAQD,EAAEI,IAAF,CAAOH,IAAI,GAAJ,GAAUC,EAAED,CAAF,CAAjB,CAAR;AACD;AACF;;AAED,MAAIP,MAAJ,EAAY;AACVM,MAAEI,IAAF,CAAO,QAAP;AACD;;AAEDT,SAAOU,QAAP,CAAgBC,MAAhB,GAAyBN,EAAEO,IAAF,CAAO,GAAP,CAAzB;;AAEA,SAAO,IAAP;AACD,CA9CD","file":"setrawcookie.js","sourcesContent":["module.exports = function setrawcookie(name, value, expires, path, domain, secure) {\n // discuss at: https://locutus.io/php/setrawcookie/\n // original by: Brett Zamir (https://brett-zamir.me)\n // original by: setcookie\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // input by: Michael\n // note 1: This function requires access to the `window` global and is Browser-only\n // bugfixed by: Brett Zamir (https://brett-zamir.me)\n // example 1: setrawcookie('author_name', 'Kevin van Zonneveld')\n // returns 1: true\n\n if (typeof window === 'undefined') {\n return true\n }\n\n if (typeof expires === 'string' && /^\\d+$/.test(expires)) {\n expires = parseInt(expires, 10)\n }\n\n if (expires instanceof Date) {\n expires = expires.toUTCString()\n } else if (typeof expires === 'number') {\n expires = new Date(expires * 1e3).toUTCString()\n }\n\n const r = [name + '=' + value]\n let i = ''\n const s = {\n expires,\n path,\n domain,\n }\n for (i in s) {\n if (s.hasOwnProperty(i)) {\n // Exclude items on Object.prototype\n s[i] && r.push(i + '=' + s[i])\n }\n }\n\n if (secure) {\n r.push('secure')\n }\n\n window.document.cookie = r.join(';')\n\n return true\n}\n"]}
|
package/php/pcre/preg_match.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
module.exports = function preg_match(regex, str) {
|
|
4
|
-
// eslint-disable-line camelcase
|
|
5
4
|
// original by: Muhammad Humayun (https://github.com/ronypt)
|
|
6
5
|
// example 1: preg_match("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,6}$", "rony@pharaohtools.com")
|
|
7
6
|
// returns 1: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/pcre/preg_match.js"],"names":["module","exports","preg_match","regex","str","RegExp","test"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,UAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/pcre/preg_match.js"],"names":["module","exports","preg_match","regex","str","RegExp","test"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,UAAT,CAAoBC,KAApB,EAA2BC,GAA3B,EAAgC;AAC/C;AACA;AACA;AACA;AACA;AACA,SAAO,IAAIC,MAAJ,CAAWF,KAAX,EAAkBG,IAAlB,CAAuBF,GAAvB,CAAP;AACD,CAPD","file":"preg_match.js","sourcesContent":["module.exports = function preg_match(regex, str) {\n // original by: Muhammad Humayun (https://github.com/ronypt)\n // example 1: preg_match(\"^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,6}$\", \"rony@pharaohtools.com\")\n // returns 1: true\n // example 2: preg_match(\"^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\\\.[a-zA-Z]{2,6}$\", \"ronypharaohtools.com\")\n // returns 2: false\n return new RegExp(regex).test(str)\n}\n"]}
|
package/php/pcre/preg_quote.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/pcre/preg_quote.js"],"names":["module","exports","preg_quote","str","delimiter","replace","RegExp"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,UAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/pcre/preg_quote.js"],"names":["module","exports","preg_quote","str","delimiter","replace","RegExp"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,UAAT,CAAoBC,GAApB,EAAyBC,SAAzB,EAAoC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAO,CAACD,MAAM,EAAP,EAAWE,OAAX,CAAmB,IAAIC,MAAJ,CAAW,qCAAqCF,aAAa,EAAlD,IAAwD,IAAnE,EAAyE,GAAzE,CAAnB,EAAkG,MAAlG,CAAP;AACD,CAfD","file":"preg_quote.js","sourcesContent":["module.exports = function preg_quote(str, delimiter) {\n // discuss at: https://locutus.io/php/preg_quote/\n // original by: booeyOH\n // improved by: Ates Goral (https://magnetiq.com)\n // improved by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // example 1: preg_quote(\"$40\")\n // returns 1: '\\\\$40'\n // example 2: preg_quote(\"*RRRING* Hello?\")\n // returns 2: '\\\\*RRRING\\\\* Hello\\\\?'\n // example 3: preg_quote(\"\\\\.+*?[^]$(){}=!<>|:\")\n // returns 3: '\\\\\\\\\\\\.\\\\+\\\\*\\\\?\\\\[\\\\^\\\\]\\\\$\\\\(\\\\)\\\\{\\\\}\\\\=\\\\!\\\\<\\\\>\\\\|\\\\:'\n\n return (str + '').replace(new RegExp('[.\\\\\\\\+*?\\\\[\\\\^\\\\]$(){}=!<>|:\\\\' + (delimiter || '') + '-]', 'g'), '\\\\$&')\n}\n"]}
|
package/php/pcre/preg_replace.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
module.exports = function preg_replace(pattern, replacement, string) {
|
|
4
|
-
// eslint-disable-line camelcase
|
|
5
4
|
// original by: rony2k6 (https://github.com/rony2k6)
|
|
6
5
|
// example 1: preg_replace('/xmas/i', 'Christmas', 'It was the night before Xmas.')
|
|
7
6
|
// returns 1: "It was the night before Christmas."
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/pcre/preg_replace.js"],"names":["module","exports","preg_replace","pattern","replacement","string","_flag","substr","lastIndexOf","_pattern","regex","RegExp","result","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,YAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/pcre/preg_replace.js"],"names":["module","exports","preg_replace","pattern","replacement","string","_flag","substr","lastIndexOf","_pattern","regex","RegExp","result","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,YAAT,CAAsBC,OAAtB,EAA+BC,WAA/B,EAA4CC,MAA5C,EAAoD;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAIC,QAAQH,QAAQI,MAAR,CAAeJ,QAAQK,WAAR,CAAoBL,QAAQ,CAAR,CAApB,IAAkC,CAAjD,CAAZ;AACAG,UAAQA,UAAU,EAAV,GAAeA,KAAf,GAAuB,GAA/B;AACA,MAAMG,WAAWN,QAAQI,MAAR,CAAe,CAAf,EAAkBJ,QAAQK,WAAR,CAAoBL,QAAQ,CAAR,CAApB,IAAkC,CAApD,CAAjB;AACA,MAAMO,QAAQ,IAAIC,MAAJ,CAAWF,QAAX,EAAqBH,KAArB,CAAd;AACA,MAAMM,SAASP,OAAOQ,OAAP,CAAeH,KAAf,EAAsBN,WAAtB,CAAf;;AAEA,SAAOQ,MAAP;AACD,CAnBD","file":"preg_replace.js","sourcesContent":["module.exports = function preg_replace(pattern, replacement, string) {\n // original by: rony2k6 (https://github.com/rony2k6)\n // example 1: preg_replace('/xmas/i', 'Christmas', 'It was the night before Xmas.')\n // returns 1: \"It was the night before Christmas.\"\n // example 2: preg_replace('/xmas/ig', 'Christmas', 'xMas: It was the night before Xmas.')\n // returns 2: \"Christmas: It was the night before Christmas.\"\n // example 3: preg_replace('\\/(\\\\w+) (\\\\d+), (\\\\d+)\\/i', '$11,$3', 'April 15, 2003')\n // returns 3: \"April1,2003\"\n // example 4: preg_replace('/[^a-zA-Z0-9]+/', '', 'The Development of code . http://www.')\n // returns 4: \"TheDevelopmentofcodehttpwww\"\n // example 5: preg_replace('/[^A-Za-z0-9_\\\\s]/', '', 'D\"usseldorfer H\"auptstrasse')\n // returns 5: \"Dusseldorfer Hauptstrasse\"\n let _flag = pattern.substr(pattern.lastIndexOf(pattern[0]) + 1)\n _flag = _flag !== '' ? _flag : 'g'\n const _pattern = pattern.substr(1, pattern.lastIndexOf(pattern[0]) - 1)\n const regex = new RegExp(_pattern, _flag)\n const result = string.replace(regex, replacement)\n\n return result\n}\n"]}
|
package/php/pcre/sql_regcase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/pcre/sql_regcase.js"],"names":["module","exports","sql_regcase","str","setlocale","require","i","upper","lower","pos","retStr","$global","window","global","$locutus","php","locales","localeCategories","LC_CTYPE","length","indexOf","charAt"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,WAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/pcre/sql_regcase.js"],"names":["module","exports","sql_regcase","str","setlocale","require","i","upper","lower","pos","retStr","$global","window","global","$locutus","php","locales","localeCategories","LC_CTYPE","length","indexOf","charAt"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,WAAT,CAAqBC,GAArB,EAA0B;AACzC;AACA;AACA;AACA;;AAEA,MAAMC,YAAYC,QAAQ,sBAAR,CAAlB;AACA,MAAIC,IAAI,CAAR;AACA,MAAIC,QAAQ,EAAZ;AACA,MAAIC,QAAQ,EAAZ;AACA,MAAIC,MAAM,CAAV;AACA,MAAIC,SAAS,EAAb;;AAEAN,YAAU,QAAV,EAAoB,CAApB;;AAEA,MAAMO,UAAU,OAAOC,MAAP,KAAkB,WAAlB,GAAgCA,MAAhC,GAAyCC,MAAzD;AACAF,UAAQG,QAAR,GAAmBH,QAAQG,QAAR,IAAoB,EAAvC;AACA,MAAMA,WAAWH,QAAQG,QAAzB;AACAA,WAASC,GAAT,GAAeD,SAASC,GAAT,IAAgB,EAA/B;;AAEAR,UAAQO,SAASC,GAAT,CAAaC,OAAb,CAAqBF,SAASC,GAAT,CAAaE,gBAAb,CAA8BC,QAAnD,EAA6DA,QAA7D,CAAsEX,KAA9E;AACAC,UAAQM,SAASC,GAAT,CAAaC,OAAb,CAAqBF,SAASC,GAAT,CAAaE,gBAAb,CAA8BC,QAAnD,EAA6DA,QAA7D,CAAsEV,KAA9E;;AAEA;AACA,OAAKF,IAAI,CAAT,EAAYA,IAAIH,IAAIgB,MAApB,EAA4Bb,GAA5B,EAAiC;AAC/B,QAAI,CAACG,MAAMF,MAAMa,OAAN,CAAcjB,IAAIkB,MAAJ,CAAWf,CAAX,CAAd,CAAP,MAAyC,CAAC,CAA1C,IAA+C,CAACG,MAAMD,MAAMY,OAAN,CAAcjB,IAAIkB,MAAJ,CAAWf,CAAX,CAAd,CAAP,MAAyC,CAAC,CAA7F,EAAgG;AAC9FI,gBAAU,MAAMH,MAAMc,MAAN,CAAaZ,GAAb,CAAN,GAA0BD,MAAMa,MAAN,CAAaZ,GAAb,CAA1B,GAA8C,GAAxD;AACD,KAFD,MAEO;AACLC,gBAAUP,IAAIkB,MAAJ,CAAWf,CAAX,CAAV;AACD;AACF;;AAED,SAAOI,MAAP;AACD,CAjCD","file":"sql_regcase.js","sourcesContent":["module.exports = function sql_regcase(str) {\n // discuss at: https://locutus.io/php/sql_regcase/\n // original by: Brett Zamir (https://brett-zamir.me)\n // example 1: sql_regcase('Foo - bar.')\n // returns 1: '[Ff][Oo][Oo] - [Bb][Aa][Rr].'\n\n const setlocale = require('../strings/setlocale')\n let i = 0\n let upper = ''\n let lower = ''\n let pos = 0\n let retStr = ''\n\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 upper = $locutus.php.locales[$locutus.php.localeCategories.LC_CTYPE].LC_CTYPE.upper\n lower = $locutus.php.locales[$locutus.php.localeCategories.LC_CTYPE].LC_CTYPE.lower\n\n // @todo: Make this more readable\n for (i = 0; i < str.length; i++) {\n if ((pos = upper.indexOf(str.charAt(i))) !== -1 || (pos = lower.indexOf(str.charAt(i))) !== -1) {\n retStr += '[' + upper.charAt(pos) + lower.charAt(pos) + ']'\n } else {\n retStr += str.charAt(i)\n }\n }\n\n return retStr\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/strings/addcslashes.js"],"names":["module","exports","addcslashes","str","charlist","target","chrs","i","j","c","next","rangeBegin","rangeEnd","chr","begin","end","octalLength","postOctalPos","cca","escHexGrp","encoded","percentHex","_pad","n","length","Array","join","charAt","test","slice","match","charCodeAt","Error","push","String","fromCharCode","parseInt","indexOf","encodeURIComponent","exec","toString"],"mappings":"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","file":"addcslashes.js","sourcesContent":["module.exports = function addcslashes (str, charlist) {\n // discuss at: https://locutus.io/php/addcslashes/\n // original by: Brett Zamir (https://brett-zamir.me)\n // note 1: We show double backslashes in the return value example\n // note 1: code below because a JavaScript string will not\n // note 1: render them as backslashes otherwise\n // example 1: addcslashes('foo[ ]', 'A..z'); // Escape all ASCII within capital A to lower z range, including square brackets\n // returns 1: \"\\\\f\\\\o\\\\o\\\\[ \\\\]\"\n // example 2: addcslashes(\"zoo['.']\", 'z..A'); // Only escape z, period, and A here since not a lower-to-higher range\n // returns 2: \"\\\\zoo['\\\\.']\"\n // _example 3: addcslashes(\"@a\\u0000\\u0010\\u00A9\", \"\\0..\\37!@\\177..\\377\"); // Escape as octals those specified and less than 32 (0x20) or greater than 126 (0x7E), but not otherwise\n // _returns 3: '\\\\@a\\\\000\\\\020\\\\302\\\\251'\n // _example 4: addcslashes(\"\\u0020\\u007E\", \"\\40..\\175\"); // Those between 32 (0x20 or 040) and 126 (0x7E or 0176) decimal value will be backslashed if specified (not octalized)\n // _returns 4: '\\\\ ~'\n // _example 5: addcslashes(\"\\r\\u0007\\n\", '\\0..\\37'); // Recognize C escape sequences if specified\n // _returns 5: \"\\\\r\\\\a\\\\n\"\n // _example 6: addcslashes(\"\\r\\u0007\\n\", '\\0'); // Do not recognize C escape sequences if not specified\n // _returns 6: \"\\r\\u0007\\n\"\n\n let target = ''\n const chrs = []\n let i = 0\n let j = 0\n let c = ''\n let next = ''\n let rangeBegin = ''\n let rangeEnd = ''\n let chr = ''\n let begin = 0\n let end = 0\n let octalLength = 0\n let postOctalPos = 0\n let cca = 0\n let escHexGrp = []\n let encoded = ''\n const percentHex = /%([\\dA-Fa-f]+)/g\n\n const _pad = function (n, c) {\n if ((n = n + '').length < c) {\n return new Array(++c - n.length).join('0') + n\n }\n return n\n }\n\n for (i = 0; i < charlist.length; i++) {\n c = charlist.charAt(i)\n next = charlist.charAt(i + 1)\n if (c === '\\\\' && next && (/\\d/).test(next)) {\n // Octal\n rangeBegin = charlist.slice(i + 1).match(/^\\d+/)[0]\n octalLength = rangeBegin.length\n postOctalPos = i + octalLength + 1\n if (charlist.charAt(postOctalPos) + charlist.charAt(postOctalPos + 1) === '..') {\n // Octal begins range\n begin = rangeBegin.charCodeAt(0)\n if ((/\\\\\\d/).test(charlist.charAt(postOctalPos + 2) + charlist.charAt(postOctalPos + 3))) {\n // Range ends with octal\n rangeEnd = charlist.slice(postOctalPos + 3).match(/^\\d+/)[0]\n // Skip range end backslash\n i += 1\n } else if (charlist.charAt(postOctalPos + 2)) {\n // Range ends with character\n rangeEnd = charlist.charAt(postOctalPos + 2)\n } else {\n throw new Error('Range with no end point')\n }\n end = rangeEnd.charCodeAt(0)\n if (end > begin) {\n // Treat as a range\n for (j = begin; j <= end; j++) {\n chrs.push(String.fromCharCode(j))\n }\n } else {\n // Supposed to treat period, begin and end as individual characters only, not a range\n chrs.push('.', rangeBegin, rangeEnd)\n }\n // Skip dots and range end (already skipped range end backslash if present)\n i += rangeEnd.length + 2\n } else {\n // Octal is by itself\n chr = String.fromCharCode(parseInt(rangeBegin, 8))\n chrs.push(chr)\n }\n // Skip range begin\n i += octalLength\n } else if (next + charlist.charAt(i + 2) === '..') {\n // Character begins range\n rangeBegin = c\n begin = rangeBegin.charCodeAt(0)\n if ((/\\\\\\d/).test(charlist.charAt(i + 3) + charlist.charAt(i + 4))) {\n // Range ends with octal\n rangeEnd = charlist.slice(i + 4).match(/^\\d+/)[0]\n // Skip range end backslash\n i += 1\n } else if (charlist.charAt(i + 3)) {\n // Range ends with character\n rangeEnd = charlist.charAt(i + 3)\n } else {\n throw new Error('Range with no end point')\n }\n end = rangeEnd.charCodeAt(0)\n if (end > begin) {\n // Treat as a range\n for (j = begin; j <= end; j++) {\n chrs.push(String.fromCharCode(j))\n }\n } else {\n // Supposed to treat period, begin and end as individual characters only, not a range\n chrs.push('.', rangeBegin, rangeEnd)\n }\n // Skip dots and range end (already skipped range end backslash if present)\n i += rangeEnd.length + 2\n } else {\n // Character is by itself\n chrs.push(c)\n }\n }\n\n for (i = 0; i < str.length; i++) {\n c = str.charAt(i)\n if (chrs.indexOf(c) !== -1) {\n target += '\\\\'\n cca = c.charCodeAt(0)\n if (cca < 32 || cca > 126) {\n // Needs special escaping\n switch (c) {\n case '\\n':\n target += 'n'\n break\n case '\\t':\n target += 't'\n break\n case '\\u000D':\n target += 'r'\n break\n case '\\u0007':\n target += 'a'\n break\n case '\\v':\n target += 'v'\n break\n case '\\b':\n target += 'b'\n break\n case '\\f':\n target += 'f'\n break\n default:\n // target += _pad(cca.toString(8), 3);break; // Sufficient for UTF-16\n encoded = encodeURIComponent(c)\n\n // 3-length-padded UTF-8 octets\n if ((escHexGrp = percentHex.exec(encoded)) !== null) {\n // already added a slash above:\n target += _pad(parseInt(escHexGrp[1], 16).toString(8), 3)\n }\n while ((escHexGrp = percentHex.exec(encoded)) !== null) {\n target += '\\\\' + _pad(parseInt(escHexGrp[1], 16).toString(8), 3)\n }\n break\n }\n } else {\n // Perform regular backslashed escaping\n target += c\n }\n } else {\n // Just add the character unescaped\n target += c\n }\n }\n\n return target\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/php/strings/addcslashes.js"],"names":["module","exports","addcslashes","str","charlist","target","chrs","i","j","c","next","rangeBegin","rangeEnd","chr","begin","end","octalLength","postOctalPos","cca","escHexGrp","encoded","percentHex","_pad","n","length","Array","join","charAt","test","slice","match","charCodeAt","Error","push","String","fromCharCode","parseInt","indexOf","encodeURIComponent","exec","toString"],"mappings":"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","file":"addcslashes.js","sourcesContent":["module.exports = function addcslashes(str, charlist) {\n // discuss at: https://locutus.io/php/addcslashes/\n // original by: Brett Zamir (https://brett-zamir.me)\n // note 1: We show double backslashes in the return value example\n // note 1: code below because a JavaScript string will not\n // note 1: render them as backslashes otherwise\n // example 1: addcslashes('foo[ ]', 'A..z'); // Escape all ASCII within capital A to lower z range, including square brackets\n // returns 1: \"\\\\f\\\\o\\\\o\\\\[ \\\\]\"\n // example 2: addcslashes(\"zoo['.']\", 'z..A'); // Only escape z, period, and A here since not a lower-to-higher range\n // returns 2: \"\\\\zoo['\\\\.']\"\n // _example 3: addcslashes(\"@a\\u0000\\u0010\\u00A9\", \"\\0..\\37!@\\177..\\377\"); // Escape as octals those specified and less than 32 (0x20) or greater than 126 (0x7E), but not otherwise\n // _returns 3: '\\\\@a\\\\000\\\\020\\\\302\\\\251'\n // _example 4: addcslashes(\"\\u0020\\u007E\", \"\\40..\\175\"); // Those between 32 (0x20 or 040) and 126 (0x7E or 0176) decimal value will be backslashed if specified (not octalized)\n // _returns 4: '\\\\ ~'\n // _example 5: addcslashes(\"\\r\\u0007\\n\", '\\0..\\37'); // Recognize C escape sequences if specified\n // _returns 5: \"\\\\r\\\\a\\\\n\"\n // _example 6: addcslashes(\"\\r\\u0007\\n\", '\\0'); // Do not recognize C escape sequences if not specified\n // _returns 6: \"\\r\\u0007\\n\"\n\n let target = ''\n const chrs = []\n let i = 0\n let j = 0\n let c = ''\n let next = ''\n let rangeBegin = ''\n let rangeEnd = ''\n let chr = ''\n let begin = 0\n let end = 0\n let octalLength = 0\n let postOctalPos = 0\n let cca = 0\n let escHexGrp = []\n let encoded = ''\n const percentHex = /%([\\dA-Fa-f]+)/g\n\n const _pad = function (n, c) {\n if ((n = n + '').length < c) {\n return new Array(++c - n.length).join('0') + n\n }\n return n\n }\n\n for (i = 0; i < charlist.length; i++) {\n c = charlist.charAt(i)\n next = charlist.charAt(i + 1)\n if (c === '\\\\' && next && /\\d/.test(next)) {\n // Octal\n rangeBegin = charlist.slice(i + 1).match(/^\\d+/)[0]\n octalLength = rangeBegin.length\n postOctalPos = i + octalLength + 1\n if (charlist.charAt(postOctalPos) + charlist.charAt(postOctalPos + 1) === '..') {\n // Octal begins range\n begin = rangeBegin.charCodeAt(0)\n if (/\\\\\\d/.test(charlist.charAt(postOctalPos + 2) + charlist.charAt(postOctalPos + 3))) {\n // Range ends with octal\n rangeEnd = charlist.slice(postOctalPos + 3).match(/^\\d+/)[0]\n // Skip range end backslash\n i += 1\n } else if (charlist.charAt(postOctalPos + 2)) {\n // Range ends with character\n rangeEnd = charlist.charAt(postOctalPos + 2)\n } else {\n throw new Error('Range with no end point')\n }\n end = rangeEnd.charCodeAt(0)\n if (end > begin) {\n // Treat as a range\n for (j = begin; j <= end; j++) {\n chrs.push(String.fromCharCode(j))\n }\n } else {\n // Supposed to treat period, begin and end as individual characters only, not a range\n chrs.push('.', rangeBegin, rangeEnd)\n }\n // Skip dots and range end (already skipped range end backslash if present)\n i += rangeEnd.length + 2\n } else {\n // Octal is by itself\n chr = String.fromCharCode(parseInt(rangeBegin, 8))\n chrs.push(chr)\n }\n // Skip range begin\n i += octalLength\n } else if (next + charlist.charAt(i + 2) === '..') {\n // Character begins range\n rangeBegin = c\n begin = rangeBegin.charCodeAt(0)\n if (/\\\\\\d/.test(charlist.charAt(i + 3) + charlist.charAt(i + 4))) {\n // Range ends with octal\n rangeEnd = charlist.slice(i + 4).match(/^\\d+/)[0]\n // Skip range end backslash\n i += 1\n } else if (charlist.charAt(i + 3)) {\n // Range ends with character\n rangeEnd = charlist.charAt(i + 3)\n } else {\n throw new Error('Range with no end point')\n }\n end = rangeEnd.charCodeAt(0)\n if (end > begin) {\n // Treat as a range\n for (j = begin; j <= end; j++) {\n chrs.push(String.fromCharCode(j))\n }\n } else {\n // Supposed to treat period, begin and end as individual characters only, not a range\n chrs.push('.', rangeBegin, rangeEnd)\n }\n // Skip dots and range end (already skipped range end backslash if present)\n i += rangeEnd.length + 2\n } else {\n // Character is by itself\n chrs.push(c)\n }\n }\n\n for (i = 0; i < str.length; i++) {\n c = str.charAt(i)\n if (chrs.indexOf(c) !== -1) {\n target += '\\\\'\n cca = c.charCodeAt(0)\n if (cca < 32 || cca > 126) {\n // Needs special escaping\n switch (c) {\n case '\\n':\n target += 'n'\n break\n case '\\t':\n target += 't'\n break\n case '\\u000D':\n target += 'r'\n break\n case '\\u0007':\n target += 'a'\n break\n case '\\v':\n target += 'v'\n break\n case '\\b':\n target += 'b'\n break\n case '\\f':\n target += 'f'\n break\n default:\n // target += _pad(cca.toString(8), 3);break; // Sufficient for UTF-16\n encoded = encodeURIComponent(c)\n\n // 3-length-padded UTF-8 octets\n if ((escHexGrp = percentHex.exec(encoded)) !== null) {\n // already added a slash above:\n target += _pad(parseInt(escHexGrp[1], 16).toString(8), 3)\n }\n while ((escHexGrp = percentHex.exec(encoded)) !== null) {\n target += '\\\\' + _pad(parseInt(escHexGrp[1], 16).toString(8), 3)\n }\n break\n }\n } else {\n // Perform regular backslashed escaping\n target += c\n }\n } else {\n // Just add the character unescaped\n target += c\n }\n }\n\n return target\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/strings/addslashes.js"],"names":["module","exports","addslashes","str","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,UAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/strings/addslashes.js"],"names":["module","exports","addslashes","str","replace"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,UAAT,CAAoBC,GAApB,EAAyB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAO,CAACA,MAAM,EAAP,EAAWC,OAAX,CAAmB,SAAnB,EAA8B,MAA9B,EAAsCA,OAAtC,CAA8C,SAA9C,EAAyD,KAAzD,CAAP;AACD,CAdD","file":"addslashes.js","sourcesContent":["module.exports = function addslashes(str) {\n // discuss at: https://locutus.io/php/addslashes/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Ates Goral (https://magnetiq.com)\n // improved by: marrtins\n // improved by: Nate\n // improved by: Onno Marsman (https://twitter.com/onnomarsman)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // improved by: Oskar Larsson Högfeldt (https://oskar-lh.name/)\n // input by: Denny Wardhana\n // example 1: addslashes(\"kevin's birthday\")\n // returns 1: \"kevin\\\\'s birthday\"\n\n return (str + '').replace(/[\\\\\"']/g, '\\\\$&').replace(/\\u0000/g, '\\\\0')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/strings/bin2hex.js"],"names":["module","exports","bin2hex","s","i","l","o","n","length","charCodeAt","toString"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,OAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/strings/bin2hex.js"],"names":["module","exports","bin2hex","s","i","l","o","n","length","charCodeAt","toString"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,OAAT,CAAiBC,CAAjB,EAAoB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,UAAJ;AACA,MAAIC,UAAJ;AACA,MAAIC,IAAI,EAAR;AACA,MAAIC,UAAJ;;AAEAJ,OAAK,EAAL;;AAEA,OAAKC,IAAI,CAAJ,EAAOC,IAAIF,EAAEK,MAAlB,EAA0BJ,IAAIC,CAA9B,EAAiCD,GAAjC,EAAsC;AACpCG,QAAIJ,EAAEM,UAAF,CAAaL,CAAb,EAAgBM,QAAhB,CAAyB,EAAzB,CAAJ;AACAJ,SAAKC,EAAEC,MAAF,GAAW,CAAX,GAAe,MAAMD,CAArB,GAAyBA,CAA9B;AACD;;AAED,SAAOD,CAAP;AACD,CAxBD","file":"bin2hex.js","sourcesContent":["module.exports = function bin2hex(s) {\n // discuss at: https://locutus.io/php/bin2hex/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // bugfixed by: Onno Marsman (https://twitter.com/onnomarsman)\n // bugfixed by: Linuxworld\n // improved by: ntoniazzi (https://locutus.io/php/bin2hex:361#comment_177616)\n // example 1: bin2hex('Kev')\n // returns 1: '4b6576'\n // example 2: bin2hex(String.fromCharCode(0x00))\n // returns 2: '00'\n\n let i\n let l\n let o = ''\n let n\n\n s += ''\n\n for (i = 0, l = s.length; i < l; i++) {\n n = s.charCodeAt(i).toString(16)\n o += n.length < 2 ? '0' + n : n\n }\n\n return o\n}\n"]}
|
package/php/strings/chop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/strings/chop.js"],"names":["module","exports","chop","str","charlist","rtrim","require"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,IAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/strings/chop.js"],"names":["module","exports","chop","str","charlist","rtrim","require"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,IAAT,CAAcC,GAAd,EAAmBC,QAAnB,EAA6B;AAC5C;AACA;AACA;AACA;;AAEA,MAAMC,QAAQC,QAAQ,kBAAR,CAAd;AACA,SAAOD,MAAMF,GAAN,EAAWC,QAAX,CAAP;AACD,CARD","file":"chop.js","sourcesContent":["module.exports = function chop(str, charlist) {\n // discuss at: https://locutus.io/php/chop/\n // original by: Paulo Freitas\n // example 1: chop(' Kevin van Zonneveld ')\n // returns 1: ' Kevin van Zonneveld'\n\n const rtrim = require('../strings/rtrim')\n return rtrim(str, charlist)\n}\n"]}
|
package/php/strings/chr.js
CHANGED
|
@@ -9,13 +9,13 @@ module.exports = function chr(codePt) {
|
|
|
9
9
|
// returns 1: true
|
|
10
10
|
// returns 1: true
|
|
11
11
|
|
|
12
|
-
if (codePt >
|
|
12
|
+
if (codePt > 0xffff) {
|
|
13
13
|
// Create a four-byte string (length 2) since this code point is high
|
|
14
14
|
// enough for the UTF-16 encoding (JavaScript internal use), to
|
|
15
15
|
// require representation with two surrogates (reserved non-characters
|
|
16
16
|
// used for building other characters; the first is "high" and the next "low")
|
|
17
17
|
codePt -= 0x10000;
|
|
18
|
-
return String.fromCharCode(
|
|
18
|
+
return String.fromCharCode(0xd800 + (codePt >> 10), 0xdc00 + (codePt & 0x3ff));
|
|
19
19
|
}
|
|
20
20
|
return String.fromCharCode(codePt);
|
|
21
21
|
};
|
package/php/strings/chr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/strings/chr.js"],"names":["module","exports","chr","codePt","String","fromCharCode"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,GAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/strings/chr.js"],"names":["module","exports","chr","codePt","String","fromCharCode"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,GAAT,CAAaC,MAAb,EAAqB;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIA,SAAS,MAAb,EAAqB;AACnB;AACA;AACA;AACA;AACAA,cAAU,OAAV;AACA,WAAOC,OAAOC,YAAP,CAAoB,UAAUF,UAAU,EAApB,CAApB,EAA6C,UAAUA,SAAS,KAAnB,CAA7C,CAAP;AACD;AACD,SAAOC,OAAOC,YAAP,CAAoBF,MAApB,CAAP;AACD,CAlBD","file":"chr.js","sourcesContent":["module.exports = function chr(codePt) {\n // discuss at: https://locutus.io/php/chr/\n // original by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Brett Zamir (https://brett-zamir.me)\n // example 1: chr(75) === 'K'\n // example 1: chr(65536) === '\\uD800\\uDC00'\n // returns 1: true\n // returns 1: true\n\n if (codePt > 0xffff) {\n // Create a four-byte string (length 2) since this code point is high\n // enough for the UTF-16 encoding (JavaScript internal use), to\n // require representation with two surrogates (reserved non-characters\n // used for building other characters; the first is \"high\" and the next \"low\")\n codePt -= 0x10000\n return String.fromCharCode(0xd800 + (codePt >> 10), 0xdc00 + (codePt & 0x3ff))\n }\n return String.fromCharCode(codePt)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/php/strings/chunk_split.js"],"names":["module","exports","chunk_split","body","chunklen","end","parseInt","match","RegExp","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,WAAT,
|
|
1
|
+
{"version":3,"sources":["../../../src/php/strings/chunk_split.js"],"names":["module","exports","chunk_split","body","chunklen","end","parseInt","match","RegExp","join"],"mappings":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,WAAT,CAAqBC,IAArB,EAA2BC,QAA3B,EAAqCC,GAArC,EAA0C;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEAD,aAAWE,SAASF,QAAT,EAAmB,EAAnB,KAA0B,EAArC;AACAC,QAAMA,OAAO,MAAb;;AAEA,MAAID,WAAW,CAAf,EAAkB;AAChB,WAAO,KAAP;AACD;;AAED,SAAOD,KAAKI,KAAL,CAAW,IAAIC,MAAJ,CAAW,SAASJ,QAAT,GAAoB,GAA/B,EAAoC,GAApC,CAAX,EAAqDK,IAArD,CAA0DJ,GAA1D,CAAP;AACD,CAnBD","file":"chunk_split.js","sourcesContent":["module.exports = function chunk_split(body, chunklen, end) {\n // discuss at: https://locutus.io/php/chunk_split/\n // original by: Paulo Freitas\n // input by: Brett Zamir (https://brett-zamir.me)\n // bugfixed by: Kevin van Zonneveld (https://kvz.io)\n // improved by: Theriault (https://github.com/Theriault)\n // example 1: chunk_split('Hello world!', 1, '*')\n // returns 1: 'H*e*l*l*o* *w*o*r*l*d*!*'\n // example 2: chunk_split('Hello world!', 10, '*')\n // returns 2: 'Hello worl*d!*'\n\n chunklen = parseInt(chunklen, 10) || 76\n end = end || '\\r\\n'\n\n if (chunklen < 1) {\n return false\n }\n\n return body.match(new RegExp('.{0,' + chunklen + '}', 'g')).join(end)\n}\n"]}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
module.exports = function convert_cyr_string(str, from, to) {
|
|
4
|
-
// eslint-disable-line camelcase
|
|
5
4
|
// discuss at: https://locutus.io/php/convert_cyr_string/
|
|
6
5
|
// original by: Brett Zamir (https://brett-zamir.me)
|
|
7
6
|
// note 1: Assumes and converts to Unicode strings with character
|