Class: XTwitterScraper::Models::RadarItem

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/x_twitter_scraper/models/radar_item.rb,
sig/x_twitter_scraper/models/radar_item.rbs

Defined Under Namespace

Modules: Category, Source

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, category:, created_at:, language:, metadata:, published_at:, region:, score:, source:, source_id:, title:, description: nil, image_url: nil, url: nil) ⇒ Object

Some parameter documentations has been truncated, see XTwitterScraper::Models::RadarItem for more details.

Trending topic with score, category, source, region, language, and source-specific metadata.

Parameters:

  • id (String)

    Radar item identifier.

  • category (Symbol, XTwitterScraper::Models::RadarItem::Category)
  • created_at (Time)
  • language (String)
  • metadata (Hash{Symbol=>Object})

    Source-specific fields. Shape varies per source:

  • published_at (Time)
  • region (String)
  • score (Float)
  • source (Symbol, XTwitterScraper::Models::RadarItem::Source)
  • source_id (String)

    Source-specific identifier used for deduplication.

  • title (String)
  • description (String) (defaults to: nil)
  • image_url (String) (defaults to: nil)
  • url (String) (defaults to: nil)


# File 'lib/x_twitter_scraper/models/radar_item.rb', line 89

Instance Attribute Details

#categorySymbol, XTwitterScraper::Models::RadarItem::Category

Parameters:

  • value (XTwitterScraper::Models::RadarItem::category)

Returns:



15
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 15

required :category, enum: -> { XTwitterScraper::RadarItem::Category }

#created_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


20
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 20

required :created_at, Time, api_name: :createdAt

#descriptionString?

Parameters:

  • (String)

Returns:

  • (String, nil)


77
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 77

optional :description, String

#idString

Radar item identifier.

Parameters:

  • value (String)

Returns:

  • (String)


10
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 10

required :id, String

#image_urlString?

Parameters:

  • (String)

Returns:

  • (String, nil)


82
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 82

optional :image_url, String, api_name: :imageUrl

#languageString

Parameters:

  • value (String)

Returns:

  • (String)


25
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 25

required :language, String

#metadataHash{Symbol=>Object}

Source-specific fields. Shape varies per source:

  • reddit: { subreddit: string, author: string }
  • github: { starsToday: number }
  • hacker_news: { points: number, numberComments: number }
  • google_trends: { approxTraffic: number }
  • polymarket: { volume24hr: number }
  • wikipedia: { views: number }
  • trustmrr: { mrr, growthPercent, last30Days, total, customers, activeSubscriptions, onSale, xHandle?, category?, askingPrice?, country?, growthMrrPercent?, multiple?, paymentProvider?, rank? }

Parameters:

  • value (::Hash[Symbol, top])

Returns:

  • (Hash{Symbol=>Object})


41
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 41

required :metadata, XTwitterScraper::Internal::Type::HashOf[XTwitterScraper::Internal::Type::Unknown]

#published_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


46
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 46

required :published_at, Time, api_name: :publishedAt

#regionString

Parameters:

  • value (String)

Returns:

  • (String)


51
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 51

required :region, String

#scoreFloat

Parameters:

  • value (Float)

Returns:

  • (Float)


56
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 56

required :score, Float

#sourceSymbol, XTwitterScraper::Models::RadarItem::Source

Parameters:

  • value (XTwitterScraper::Models::RadarItem::source)

Returns:



61
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 61

required :source, enum: -> { XTwitterScraper::RadarItem::Source }

#source_idString

Source-specific identifier used for deduplication.

Parameters:

  • value (String)

Returns:

  • (String)


67
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 67

required :source_id, String, api_name: :sourceId

#titleString

Parameters:

  • value (String)

Returns:

  • (String)


72
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 72

required :title, String

#urlString?

Parameters:

  • (String)

Returns:

  • (String, nil)


87
# File 'lib/x_twitter_scraper/models/radar_item.rb', line 87

optional :url, String

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/x_twitter_scraper/models/radar_item.rb', line 137

Instance Method Details

#to_hash{

Returns:

  • ({)


73
# File 'sig/x_twitter_scraper/models/radar_item.rbs', line 73

def to_hash: -> {