Class: Langfuse::CLI::Formatters::CSVFormatter
- Inherits:
-
Object
- Object
- Langfuse::CLI::Formatters::CSVFormatter
- Defined in:
- lib/langfuse/cli/formatters/csv_formatter.rb
Class Method Summary collapse
Class Method Details
.format(data) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/langfuse/cli/formatters/csv_formatter.rb', line 8 def self.format(data) return "No data to display" if data.nil? || (data.is_a?(Array) && data.empty?) # Convert single hash to array for consistent handling data = [data] unless data.is_a?(Array) # Get all unique keys from all rows headers = data.flat_map(&:keys).uniq # Generate CSV CSV.generate do |csv| # Add headers csv << headers # Add data rows data.each do |row| csv << headers.map { |header| format_value(row[header]) } end end end |