Sha256: 90acf021a043fc2efb8e314823818ca92ec390c2491f0b426eea40cdf627cc72

Contents?: true

Size: 930 Bytes

Versions: 6

Compression:

Stored size: 930 Bytes

Contents

module Hyperstack
  module Internal
    module Component
      class WhileLoadingWrapper < RescueWrapper
        render do
          if @waiting_on_resources && !quiet?
            RenderingContext.raise_if_not_quiet = false
          else
            @waiting_on_resources = false
            @Child.instance_eval do
              mutate if @__hyperstack_while_loading_waiting_on_resources
              @__hyperstack_while_loading_waiting_on_resources = false
            end
            RenderingContext.raise_if_not_quiet = true
          end
          RescueMetaWrapper(children_elements: @ChildrenElements)
        end

        before_mount do
          wrapper = self
          @Child.class.rescues RenderingContext::NotQuiet do
            wrapper.instance_variable_set(:@waiting_on_resources, true)
            @__hyperstack_while_loading_waiting_on_resources = true
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
hyper-component-1.0.alpha1.8 lib/hyperstack/internal/component/while_loading_wrapper.rb
hyper-component-1.0.alpha1.7 lib/hyperstack/internal/component/while_loading_wrapper.rb
hyper-component-1.0.alpha1.6 lib/hyperstack/internal/component/while_loading_wrapper.rb
hyper-component-1.0.alpha1.5 lib/hyperstack/internal/component/while_loading_wrapper.rb
hyper-component-1.0.alpha1.4 lib/hyperstack/internal/component/while_loading_wrapper.rb
hyper-component-1.0.alpha1.3 lib/hyperstack/internal/component/while_loading_wrapper.rb