Class: LcpRuby::Widgets::DataResolver
- Inherits:
-
Object
- Object
- LcpRuby::Widgets::DataResolver
- Includes:
- ScopeApplicator
- Defined in:
- lib/lcp_ruby/widgets/data_resolver.rb
Defined Under Namespace
Classes: WidgetScope
Instance Method Summary collapse
-
#initialize(zone, user:, scope_context: nil, filter_form: nil, scope_filter_set: nil, record: nil, trusted: true) ⇒ DataResolver
constructor
A new instance of DataResolver.
- #resolve ⇒ Object
Methods included from ScopeApplicator
apply_date_range_filter, apply_filter_form, apply_scope_filters, apply_value_filter, blank_filter_value?, dispatch_filter_value, resolve_filter_value
Constructor Details
#initialize(zone, user:, scope_context: nil, filter_form: nil, scope_filter_set: nil, record: nil, trusted: true) ⇒ DataResolver
Returns a new instance of DataResolver.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/lcp_ruby/widgets/data_resolver.rb', line 10 def initialize(zone, user:, scope_context: nil, filter_form: nil, scope_filter_set: nil, record: nil, trusted: true) @zone = zone @user = user @scope_context = scope_context || {} @filter_form = filter_form @scope_filter_set = scope_filter_set @record = record # Whether the owning page may emit raw (unsanitized) HTML — false for # end-user-editable DB pages, which sanitize rich_text at render. # Defaults true so YAML/auto pages and non-page callers keep raw # pass-through. @trusted = trusted end |
Instance Method Details
#resolve ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/lcp_ruby/widgets/data_resolver.rb', line 25 def resolve = @zone. return { hidden: true } unless case ["type"] when "kpi_card" then resolve_kpi_card() when "text" then resolve_text() when "rich_text" then resolve_rich_text() when "markdown" then resolve_markdown() when "list" then resolve_list() when "chart" then resolve_chart() when "embed" then () when "workflow_graph" then resolve_workflow_graph() when "approval_status" then resolve_approval_status else { hidden: true } end end |