Sha256: 343058d091cd09974d5e139e690c1232931db41d8c650ef4ae8c78ec047a829c

Contents?: true

Size: 799 Bytes

Versions: 1

Compression:

Stored size: 799 Bytes

Contents

require 'voom/presenters/dsl/components/actions/base'
require 'voom/presenters/namespace'


module Voom
  module Presenters
    module DSL
      module Components
        module Actions
          class Loads < Actions::Base
            include Namespace

            def initialize(**attribs_, &block)
              super(type: :loads, **attribs_, &block)
            end

            def url
              @parent.router.url(render: parse_presenter, command: options[:path], context: params)
            end

            private

            def parse_presenter
              return options[:presenter] if options[:presenter].match(/^https?\:\/\//)
              _expand_namespace_(options[:presenter], namespace).gsub(':','/')
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
voom-presenters-0.2.0 lib/voom/presenters/dsl/components/actions/loads.rb