$params Query parameters. * @return string The assembled URL. */ public static function build_authorize_url( $base_url, array $params ) { return $base_url . '?' . http_build_query( $params, '', '&', PHP_QUERY_RFC3986 ); } /** * URL-safe base64 encoding without padding. * * @param string $bytes Raw bytes. * @return string */ private static function base64url( $bytes ) { return rtrim( strtr( base64_encode( $bytes ), '+/', '-_' ), '=' ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode -- Encoding raw bytes for a URL-safe string, not obfuscating code. } }