Sha256: 792b68d8d69ef58be1c22fccfe81c36a6221fc8f59bee204db4d7bd3cdb3901d

Contents?: true

Size: 993 Bytes

Versions: 18

Compression:

Stored size: 993 Bytes

Contents

module Coco
  module App
    module Elements
      class Link < Coco::Link
        include Concerns::AcceptsOptions
        include Concerns::AcceptsTheme

        THEMES = %W[positive primary warning negative info neutral-dark neutral-light] << nil

        accepts_option :theme, from: THEMES
        accepts_option :underline, from: [true, false]

        before_initialize do |kwargs|
          if kwargs.key?(:modal)
            modal_name = (kwargs[:modal] == true) ? "default" : kwargs[:modal]
            kwargs[:data] = kwargs.fetch(:data, {}).merge(coco_modal_data_attributes(modal_name))
            kwargs.delete(:modal)
          end
          if kwargs.key?(:frame)
            turbo_data = {turbo: true, turbo_frame: kwargs[:frame]}
            kwargs[:data] = kwargs.fetch(:data, {}).merge(turbo_data)
            kwargs.delete(:frame)
          end
          kwargs
        end

        class << self
          include Coco::BaseHelper
        end
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
coveragebook_components-0.10.0 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.9.1 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.9.0 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.9 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.8 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.7 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.6 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.5 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.4 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.3 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.2 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.1 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.0 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.0.beta.3 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.0.beta.2 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.8.0.beta.1 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.7.10 app/components/coco/app/elements/link/link.rb
coveragebook_components-0.7.9 app/components/coco/app/elements/link/link.rb