Sha256: 2007f5fbd1105458e0e77fe130b8dca7e6ff0b031ac79314df67f803734afe12
Contents?: true
Size: 1.07 KB
Versions: 1
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true module Boppers require "thor" require "aitch" require "boppers/version" require "boppers/cli" require "boppers/configuration" require "boppers/http_client" require "boppers/runner" def self.configure yield configuration end def self.configuration @configuration ||= Configuration.new end # Send notification. # The `name` identifies the message type, which is used to # filter out the notifications and their subscribers. def self.notify(name, title:, message:, options: {}) configuration .notifiers .select {|notifier| subscribed?(notifier, name) } .each do |notifier| notifier.call(title, message, options) end end def self.subscribed?(notifier, name) subscriptions = if notifier.respond_to?(:subscribe) [notifier.subscribe || name] else [name] end subscriptions = subscriptions.flatten.compact.map(&:to_sym) p name p notifier p subscriptions subscriptions.include?(name) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
boppers-0.0.4 | lib/boppers.rb |