Class: RubyLLM::MCP::Auth::Browser::Pages

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_llm/mcp/auth/browser/pages.rb

Overview

HTML page generation for OAuth callback responses Provides default success and error pages with customization support

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(custom_success_page: nil, custom_error_page: nil) ⇒ Pages

Returns a new instance of Pages.

Parameters:

  • custom_success_page (String, Proc) (defaults to: nil)

    custom HTML for success page

  • custom_error_page (String, Proc) (defaults to: nil)

    custom HTML for error page (accepts error_message)



14
15
16
17
# File 'lib/ruby_llm/mcp/auth/browser/pages.rb', line 14

def initialize(custom_success_page: nil, custom_error_page: nil)
  @custom_success_page = custom_success_page
  @custom_error_page = custom_error_page
end

Instance Attribute Details

#custom_error_pageObject (readonly)

Returns the value of attribute custom_error_page.



10
11
12
# File 'lib/ruby_llm/mcp/auth/browser/pages.rb', line 10

def custom_error_page
  @custom_error_page
end

#custom_success_pageObject (readonly)

Returns the value of attribute custom_success_page.



10
11
12
# File 'lib/ruby_llm/mcp/auth/browser/pages.rb', line 10

def custom_success_page
  @custom_success_page
end

Instance Method Details

#error_page(error_message) ⇒ String

Generate error page HTML

Parameters:

  • error_message (String)

    error message to display

Returns:

  • (String)

    HTML content



31
32
33
34
35
36
37
38
39
# File 'lib/ruby_llm/mcp/auth/browser/pages.rb', line 31

def error_page(error_message)
  if @custom_error_page.respond_to?(:call)
    return @custom_error_page.call(error_message)
  elsif @custom_error_page.is_a?(String)
    return @custom_error_page
  end

  default_error_page(error_message)
end

#success_pageString

Generate success page HTML

Returns:

  • (String)

    HTML content



21
22
23
24
25
26
# File 'lib/ruby_llm/mcp/auth/browser/pages.rb', line 21

def success_page
  return @custom_success_page.call if @custom_success_page.respond_to?(:call)
  return @custom_success_page if @custom_success_page.is_a?(String)

  default_success_page
end