Module: LlmCostTracker::DashboardQueryHelper
- Included in:
- ApplicationHelper
- Defined in:
- app/helpers/llm_cost_tracker/dashboard_query_helper.rb
Instance Method Summary collapse
- #calls_query_for_tag(key:, value:) ⇒ Object
- #dashboard_filter_path(query) ⇒ Object
- #hidden_query_fields(query, prefix: nil) ⇒ Object
Instance Method Details
#calls_query_for_tag(key:, value:) ⇒ Object
12 13 14 15 16 17 |
# File 'app/helpers/llm_cost_tracker/dashboard_query_helper.rb', line 12 def calls_query_for_tag(key:, value:) query = current_query(page: nil, per: nil, format: nil) = LlmCostTracker::Dashboard::Params.tag_query(query[:tag]) query[:tag] = .merge(key.to_s => value.to_s) query end |
#dashboard_filter_path(query) ⇒ Object
5 6 7 8 9 10 |
# File 'app/helpers/llm_cost_tracker/dashboard_query_helper.rb', line 5 def dashboard_filter_path(query) cleaned = clean_dashboard_query(query) return request.path if cleaned.blank? "#{request.path}?#{cleaned.to_query}" end |
#hidden_query_fields(query, prefix: nil) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'app/helpers/llm_cost_tracker/dashboard_query_helper.rb', line 19 def hidden_query_fields(query, prefix: nil) safe_join(query.flat_map do |key, value| name = prefix ? "#{prefix}[#{key}]" : key.to_s case value when Hash then hidden_query_fields(value, prefix: name) when Array then value.map { |item| hidden_field_tag("#{name}[]", item, id: nil) } else hidden_field_tag(name, value, id: nil) end end) end |