locutus 2.0.16 → 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 -1
- 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.map +1 -1
- package/php/datetime/mktime.js.map +1 -1
- package/php/datetime/strftime.js.map +1 -1
- 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.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 +0 -1
- 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 +0 -1
- 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.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.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 +0 -1
- 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 +0 -1
- 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 +2 -2
- package/python/string/punctuation.js.map +1 -1
- 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')
|
|
@@ -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":";;AAAAA,OAAOC,OAAP,GAAiB,SAASC,WAAT,CAAsBC,GAAtB,EAA2BC,QAA3B,EAAqC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAIC,SAAS,EAAb;AACA,MAAMC,OAAO,EAAb;AACA,MAAIC,IAAI,CAAR;AACA,MAAIC,IAAI,CAAR;AACA,MAAIC,IAAI,EAAR;AACA,MAAIC,OAAO,EAAX;AACA,MAAIC,aAAa,EAAjB;AACA,MAAIC,WAAW,EAAf;AACA,MAAIC,MAAM,EAAV;AACA,MAAIC,QAAQ,CAAZ;AACA,MAAIC,MAAM,CAAV;AACA,MAAIC,cAAc,CAAlB;AACA,MAAIC,eAAe,CAAnB;AACA,MAAIC,MAAM,CAAV;AACA,MAAIC,YAAY,EAAhB;AACA,MAAIC,UAAU,EAAd;AACA,MAAMC,aAAa,iBAAnB;;AAEA,MAAMC,OAAO,SAAPA,IAAO,CAAUC,CAAV,EAAad,CAAb,EAAgB;AAC3B,QAAI,CAACc,IAAIA,IAAI,EAAT,EAAaC,MAAb,GAAsBf,CAA1B,EAA6B;AAC3B,aAAO,IAAIgB,KAAJ,CAAU,EAAEhB,CAAF,GAAMc,EAAEC,MAAlB,EAA0BE,IAA1B,CAA+B,GAA/B,IAAsCH,CAA7C;AACD;AACD,WAAOA,CAAP;AACD,GALD;;AAOA,OAAKhB,IAAI,CAAT,EAAYA,IAAIH,SAASoB,MAAzB,EAAiCjB,GAAjC,EAAsC;AACpCE,QAAIL,SAASuB,MAAT,CAAgBpB,CAAhB,CAAJ;AACAG,WAAON,SAASuB,MAAT,CAAgBpB,IAAI,CAApB,CAAP;AACA,QAAIE,MAAM,IAAN,IAAcC,IAAd,IAAuB,IAAD,CAAOkB,IAAP,CAAYlB,IAAZ,CAA1B,EAA6C;AAC3C;AACAC,mBAAaP,SAASyB,KAAT,CAAetB,IAAI,CAAnB,EAAsBuB,KAAtB,CAA4B,MAA5B,EAAoC,CAApC,CAAb;AACAd,oBAAcL,WAAWa,MAAzB;AACAP,qBAAeV,IAAIS,WAAJ,GAAkB,CAAjC;AACA,UAAIZ,SAASuB,MAAT,CAAgBV,YAAhB,IAAgCb,SAASuB,MAAT,CAAgBV,eAAe,CAA/B,CAAhC,KAAsE,IAA1E,EAAgF;AAC9E;AACAH,gBAAQH,WAAWoB,UAAX,CAAsB,CAAtB,CAAR;AACA,YAAK,MAAD,CAASH,IAAT,CAAcxB,SAASuB,MAAT,CAAgBV,eAAe,CAA/B,IAAoCb,SAASuB,MAAT,CAAgBV,eAAe,CAA/B,CAAlD,CAAJ,EAA0F;AACxF;AACAL,qBAAWR,SAASyB,KAAT,CAAeZ,eAAe,CAA9B,EAAiCa,KAAjC,CAAuC,MAAvC,EAA+C,CAA/C,CAAX;AACA;AACAvB,eAAK,CAAL;AACD,SALD,MAKO,IAAIH,SAASuB,MAAT,CAAgBV,eAAe,CAA/B,CAAJ,EAAuC;AAC5C;AACAL,qBAAWR,SAASuB,MAAT,CAAgBV,eAAe,CAA/B,CAAX;AACD,SAHM,MAGA;AACL,gBAAM,IAAIe,KAAJ,CAAU,yBAAV,CAAN;AACD;AACDjB,cAAMH,SAASmB,UAAT,CAAoB,CAApB,CAAN;AACA,YAAIhB,MAAMD,KAAV,EAAiB;AACf;AACA,eAAKN,IAAIM,KAAT,EAAgBN,KAAKO,GAArB,EAA0BP,GAA1B,EAA+B;AAC7BF,iBAAK2B,IAAL,CAAUC,OAAOC,YAAP,CAAoB3B,CAApB,CAAV;AACD;AACF,SALD,MAKO;AACL;AACAF,eAAK2B,IAAL,CAAU,GAAV,EAAetB,UAAf,EAA2BC,QAA3B;AACD;AACD;AACAL,aAAKK,SAASY,MAAT,GAAkB,CAAvB;AACD,OA1BD,MA0BO;AACL;AACAX,cAAMqB,OAAOC,YAAP,CAAoBC,SAASzB,UAAT,EAAqB,CAArB,CAApB,CAAN;AACAL,aAAK2B,IAAL,CAAUpB,GAAV;AACD;AACD;AACAN,WAAKS,WAAL;AACD,KAtCD,MAsCO,IAAIN,OAAON,SAASuB,MAAT,CAAgBpB,IAAI,CAApB,CAAP,KAAkC,IAAtC,EAA4C;AACjD;AACAI,mBAAaF,CAAb;AACAK,cAAQH,WAAWoB,UAAX,CAAsB,CAAtB,CAAR;AACA,UAAK,MAAD,CAASH,IAAT,CAAcxB,SAASuB,MAAT,CAAgBpB,IAAI,CAApB,IAAyBH,SAASuB,MAAT,CAAgBpB,IAAI,CAApB,CAAvC,CAAJ,EAAoE;AAClE;AACAK,mBAAWR,SAASyB,KAAT,CAAetB,IAAI,CAAnB,EAAsBuB,KAAtB,CAA4B,MAA5B,EAAoC,CAApC,CAAX;AACA;AACAvB,aAAK,CAAL;AACD,OALD,MAKO,IAAIH,SAASuB,MAAT,CAAgBpB,IAAI,CAApB,CAAJ,EAA4B;AACjC;AACAK,mBAAWR,SAASuB,MAAT,CAAgBpB,IAAI,CAApB,CAAX;AACD,OAHM,MAGA;AACL,cAAM,IAAIyB,KAAJ,CAAU,yBAAV,CAAN;AACD;AACDjB,YAAMH,SAASmB,UAAT,CAAoB,CAApB,CAAN;AACA,UAAIhB,MAAMD,KAAV,EAAiB;AACf;AACA,aAAKN,IAAIM,KAAT,EAAgBN,KAAKO,GAArB,EAA0BP,GAA1B,EAA+B;AAC7BF,eAAK2B,IAAL,CAAUC,OAAOC,YAAP,CAAoB3B,CAApB,CAAV;AACD;AACF,OALD,MAKO;AACL;AACAF,aAAK2B,IAAL,CAAU,GAAV,EAAetB,UAAf,EAA2BC,QAA3B;AACD;AACD;AACAL,WAAKK,SAASY,MAAT,GAAkB,CAAvB;AACD,KA3BM,MA2BA;AACL;AACAlB,WAAK2B,IAAL,CAAUxB,CAAV;AACD;AACF;;AAED,OAAKF,IAAI,CAAT,EAAYA,IAAIJ,IAAIqB,MAApB,EAA4BjB,GAA5B,EAAiC;AAC/BE,QAAIN,IAAIwB,MAAJ,CAAWpB,CAAX,CAAJ;AACA,QAAID,KAAK+B,OAAL,CAAa5B,CAAb,MAAoB,CAAC,CAAzB,EAA4B;AAC1BJ,gBAAU,IAAV;AACAa,YAAMT,EAAEsB,UAAF,CAAa,CAAb,CAAN;AACA,UAAIb,MAAM,EAAN,IAAYA,MAAM,GAAtB,EAA2B;AACzB;AACA,gBAAQT,CAAR;AACE,eAAK,IAAL;AACEJ,sBAAU,GAAV;AACA;AACF,eAAK,IAAL;AACEA,sBAAU,GAAV;AACA;AACF,eAAK,IAAL;AACEA,sBAAU,GAAV;AACA;AACF,eAAK,MAAL;AACEA,sBAAU,GAAV;AACA;AACF,eAAK,IAAL;AACEA,sBAAU,GAAV;AACA;AACF,eAAK,IAAL;AACEA,sBAAU,GAAV;AACA;AACF,eAAK,IAAL;AACEA,sBAAU,GAAV;AACA;AACF;AACE;AACAe,sBAAUkB,mBAAmB7B,CAAnB,CAAV;;AAEA;AACA,gBAAI,CAACU,YAAYE,WAAWkB,IAAX,CAAgBnB,OAAhB,CAAb,MAA2C,IAA/C,EAAqD;AACnD;AACAf,wBAAUiB,KAAKc,SAASjB,UAAU,CAAV,CAAT,EAAuB,EAAvB,EAA2BqB,QAA3B,CAAoC,CAApC,CAAL,EAA6C,CAA7C,CAAV;AACD;AACD,mBAAO,CAACrB,YAAYE,WAAWkB,IAAX,CAAgBnB,OAAhB,CAAb,MAA2C,IAAlD,EAAwD;AACtDf,wBAAU,OAAOiB,KAAKc,SAASjB,UAAU,CAAV,CAAT,EAAuB,EAAvB,EAA2BqB,QAA3B,CAAoC,CAApC,CAAL,EAA6C,CAA7C,CAAjB;AACD;AACD;AAlCJ;AAoCD,OAtCD,MAsCO;AACL;AACAnC,kBAAUI,CAAV;AACD;AACF,KA7CD,MA6CO;AACL;AACAJ,gBAAUI,CAAV;AACD;AACF;;AAED,SAAOJ,MAAP;AACD,CA5KD","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
|