Sha256: 13626c302748567dc95338e3d909971b3e9d212c58c8420eb44b4fd4bcbf136f

Contents?: true

Size: 581 Bytes

Versions: 27

Compression:

Stored size: 581 Bytes

Contents

module Coco
  class Toast < Coco::Component
    include Concerns::WrapsComponent
    include Concerns::ActsAsNotification

    accepts_option :dismissable, from: [true, false], default: true
    accepts_option :dismiss, from: [true, false], default: false

    wraps_component :alert do |args|
      Coco::Alert.new(**args, dismissable: get_option_value(:dismissable))
    end

    %i[title action secondary_action link].each do |slot_name|
      renders_one slot_name, ->(**kwargs, &block) do
        alert.send(:"with_#{slot_name}", **kwargs, &block)
      end
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
coveragebook_components-0.17.1 app/components/coco/messaging/toast/toast.rb
coveragebook_components-0.17.0 app/components/coco/messaging/toast/toast.rb
coveragebook_components-0.16.0 app/components/coco/messaging/toast/toast.rb
coveragebook_components-0.15.0 app/components/coco/messaging/toast/toast.rb
coveragebook_components-0.14.0 app/components/coco/messaging/toast/toast.rb
coveragebook_components-0.13.1 app/components/coco/messaging/toast/toast.rb
coveragebook_components-0.13.0 app/components/coco/messaging/toast/toast.rb