Sha256: a305fae33c56c4f2520d2601ab4d8ea419738276ec954ea52d3910c54003e061
Contents?: true
Size: 920 Bytes
Versions: 2
Compression:
Stored size: 920 Bytes
Contents
require 'glimmer/dsl/parent_expression' require 'glimmer/web/component' module Glimmer module DSL module Web class ComponentExpression < Expression include ParentExpression def can_interpret?(parent, keyword, *args, &block) !!Glimmer::Web::Component.for(keyword) end def interpret(parent, keyword, *args, &block) custom_widget_class = Glimmer::Web::Component.for(keyword) custom_widget_class.new(parent, args, {}, &block) end def add_content(parent, keyword, *args, &block) # TODO consider avoiding source_location since it does not work in Opal if block.source_location && (block.source_location == parent.content&.__getobj__&.source_location) parent.content.call(parent) unless parent.content.called? else super end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
glimmer-dsl-web-0.0.10 | lib/glimmer/dsl/web/component_expression.rb |
glimmer-dsl-web-0.0.9 | lib/glimmer/dsl/web/component_expression.rb |