Class: AgUiProtocol::Core::Events::TextMessageContentEvent

Inherits:
BaseEvent show all
Defined in:
lib/ag_ui_protocol/core/events.rb

Overview

Represents a chunk of content in a streaming text message.

“‘ruby

event = AgUiProtocol::Core::Events::TextMessageContentEvent.new(

message_id: "m1",
delta: "Hello, world!"

)

“‘

Instance Attribute Summary collapse

Attributes inherited from BaseEvent

#raw_event, #timestamp, #type

Instance Method Summary collapse

Methods inherited from Types::Model

#as_json, #to_json

Constructor Details

#initialize(message_id:, delta:, timestamp: nil, raw_event: nil) ⇒ TextMessageContentEvent

Returns a new instance of TextMessageContentEvent.

Raises:

  • (ArgumentError)


163
164
165
166
167
168
169
# File 'lib/ag_ui_protocol/core/events.rb', line 163

def initialize(message_id:, delta:, timestamp: nil, raw_event: nil)
  raise ArgumentError, "delta must be non-empty" if delta.nil? || delta.empty?

  super(type: EventType::TEXT_MESSAGE_CONTENT, timestamp: timestamp, raw_event: raw_event)
  @message_id = message_id
  @delta = delta
end

Instance Attribute Details

#deltaObject (readonly)

Returns the value of attribute delta.



156
157
158
# File 'lib/ag_ui_protocol/core/events.rb', line 156

def delta
  @delta
end

#message_idObject (readonly)

Returns the value of attribute message_id.



153
154
155
# File 'lib/ag_ui_protocol/core/events.rb', line 153

def message_id
  @message_id
end

Instance Method Details

#to_hObject



172
173
174
# File 'lib/ag_ui_protocol/core/events.rb', line 172

def to_h
  super.merge(message_id: @message_id, delta: @delta)
end