noticed 2.8.1 → 2.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/noticed/api_client.rb +2 -0
- data/lib/noticed/bulk_delivery_method.rb +1 -0
- data/lib/noticed/bulk_delivery_methods/webhook.rb +2 -1
- data/lib/noticed/coder.rb +3 -3
- data/lib/noticed/delivery_method.rb +1 -0
- data/lib/noticed/delivery_methods/action_push_native.rb +24 -0
- data/lib/noticed/delivery_methods/webhook.rb +2 -1
- data/lib/noticed/engine.rb +4 -0
- data/lib/noticed/version.rb +1 -1
- data/lib/noticed.rb +11 -31
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 32cebd47d8dd51e3346ab82be1bf0f5043d1e2b7f7c152651fbfecf4c22b95a5
|
4
|
+
data.tar.gz: 6441dcc12b58e6cc08599c677b8b0ea130b89092683a9e4d5c7661a79afa1dc0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a7f8723ba44807eea10c190222de9b311ce34c0eea57a5f40c758ad9ae231327ec9b0430ebfeb2a6be9fa3081dc84acc75d17a101e6917bf307cd347c081ea9b
|
7
|
+
data.tar.gz: 746946dccd9e88bd6fe559995a7d6fb90ecb6b20a2f03694e5f537e23c12672381daf3e091bfdc2a7b0e1b372ff9b3a0d9c5dbdf989e7d0429c55932a3a51ece
|
data/lib/noticed/api_client.rb
CHANGED
data/lib/noticed/coder.rb
CHANGED
@@ -11,10 +11,10 @@ module Noticed
|
|
11
11
|
|
12
12
|
def self.dump(data)
|
13
13
|
return if data.nil?
|
14
|
-
if
|
15
|
-
ActiveJob::Arguments.serialize(data)
|
16
|
-
else
|
14
|
+
if ActiveJob::Arguments.respond_to?(:serialize_argument, true)
|
17
15
|
ActiveJob::Arguments.send(:serialize_argument, data)
|
16
|
+
else
|
17
|
+
ActiveJob::Arguments.serialize(data)
|
18
18
|
end
|
19
19
|
end
|
20
20
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Noticed
|
2
|
+
module DeliveryMethods
|
3
|
+
class ActionPushNative < DeliveryMethod
|
4
|
+
required_options :devices, :format
|
5
|
+
|
6
|
+
def deliver
|
7
|
+
notification = evaluate_option(:silent) ? notification_class : notification_class.silent
|
8
|
+
|
9
|
+
notification
|
10
|
+
.with_apple(evaluate_option(:with_apple))
|
11
|
+
.with_google(evaluate_option(:with_google))
|
12
|
+
.with_data(evaluate_option(:with_data))
|
13
|
+
.new(**evaluate_option(:format))
|
14
|
+
.deliver_later_to(evaluate_option(:devices))
|
15
|
+
end
|
16
|
+
|
17
|
+
def notification_class
|
18
|
+
fetch_constant(:class) || ApplicationPushNotification
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
ActiveSupport.run_load_hooks :noticed_delivery_methods_action_push_native, Noticed::DeliveryMethods::ActionPushNative
|
data/lib/noticed/engine.rb
CHANGED
@@ -2,6 +2,10 @@ module Noticed
|
|
2
2
|
class Engine < ::Rails::Engine
|
3
3
|
isolate_namespace Noticed
|
4
4
|
|
5
|
+
initializer "noticed.deprecator" do |app|
|
6
|
+
app.deprecators[:noticed] = Noticed.deprecator if app.respond_to?(:deprecators)
|
7
|
+
end
|
8
|
+
|
5
9
|
initializer "noticed.has_notifications" do
|
6
10
|
ActiveSupport.on_load(:active_record) do
|
7
11
|
include Noticed::HasNotifications
|
data/lib/noticed/version.rb
CHANGED
data/lib/noticed.rb
CHANGED
@@ -1,53 +1,33 @@
|
|
1
1
|
require "noticed/version"
|
2
2
|
require "noticed/engine"
|
3
3
|
|
4
|
+
require "zeitwerk"
|
5
|
+
|
6
|
+
loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false)
|
7
|
+
loader.ignore("#{__dir__}/generators")
|
8
|
+
loader.do_not_eager_load("#{__dir__}/noticed/bulk_delivery_methods")
|
9
|
+
loader.do_not_eager_load("#{__dir__}/noticed/delivery_methods")
|
10
|
+
loader.setup
|
11
|
+
|
4
12
|
module Noticed
|
5
13
|
include ActiveSupport::Deprecation::DeprecatedConstantAccessor
|
6
14
|
|
7
15
|
def self.deprecator # :nodoc:
|
8
|
-
@deprecator ||= ActiveSupport::Deprecation.new
|
16
|
+
@deprecator ||= ActiveSupport::Deprecation.new("3.0", "Noticed")
|
9
17
|
end
|
10
18
|
|
11
19
|
deprecate_constant :Base, "Noticed::Event", deprecator: deprecator
|
12
20
|
|
13
|
-
autoload :ApiClient, "noticed/api_client"
|
14
|
-
autoload :BulkDeliveryMethod, "noticed/bulk_delivery_method"
|
15
|
-
autoload :Coder, "noticed/coder"
|
16
|
-
autoload :DeliveryMethod, "noticed/delivery_method"
|
17
|
-
autoload :HasNotifications, "noticed/has_notifications"
|
18
|
-
autoload :NotificationChannel, "noticed/notification_channel"
|
19
|
-
autoload :RequiredOptions, "noticed/required_options"
|
20
|
-
autoload :Translation, "noticed/translation"
|
21
|
-
|
22
|
-
module BulkDeliveryMethods
|
23
|
-
autoload :Bluesky, "noticed/bulk_delivery_methods/bluesky"
|
24
|
-
autoload :Discord, "noticed/bulk_delivery_methods/discord"
|
25
|
-
autoload :Slack, "noticed/bulk_delivery_methods/slack"
|
26
|
-
autoload :Test, "noticed/bulk_delivery_methods/test"
|
27
|
-
autoload :Webhook, "noticed/bulk_delivery_methods/webhook"
|
28
|
-
end
|
29
|
-
|
30
21
|
module DeliveryMethods
|
31
22
|
include ActiveSupport::Deprecation::DeprecatedConstantAccessor
|
32
|
-
deprecate_constant :Base, "Noticed::DeliveryMethod", deprecator: Noticed.deprecator
|
33
23
|
|
34
|
-
|
35
|
-
autoload :Email, "noticed/delivery_methods/email"
|
36
|
-
autoload :Fcm, "noticed/delivery_methods/fcm"
|
37
|
-
autoload :Ios, "noticed/delivery_methods/ios"
|
38
|
-
autoload :MicrosoftTeams, "noticed/delivery_methods/microsoft_teams"
|
39
|
-
autoload :Slack, "noticed/delivery_methods/slack"
|
40
|
-
autoload :Test, "noticed/delivery_methods/test"
|
41
|
-
autoload :TwilioMessaging, "noticed/delivery_methods/twilio_messaging"
|
42
|
-
autoload :VonageSms, "noticed/delivery_methods/vonage_sms"
|
43
|
-
autoload :Webhook, "noticed/delivery_methods/webhook"
|
24
|
+
deprecate_constant :Base, "Noticed::DeliveryMethod", deprecator: Noticed.deprecator
|
44
25
|
end
|
45
26
|
|
46
27
|
mattr_accessor :parent_class
|
47
28
|
@@parent_class = "Noticed::ApplicationJob"
|
48
29
|
|
49
|
-
class ValidationError < StandardError
|
50
|
-
end
|
30
|
+
class ValidationError < StandardError; end
|
51
31
|
|
52
32
|
class ResponseUnsuccessful < StandardError
|
53
33
|
attr_reader :response
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: noticed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Oliver
|
@@ -67,6 +67,7 @@ files:
|
|
67
67
|
- lib/noticed/coder.rb
|
68
68
|
- lib/noticed/delivery_method.rb
|
69
69
|
- lib/noticed/delivery_methods/action_cable.rb
|
70
|
+
- lib/noticed/delivery_methods/action_push_native.rb
|
70
71
|
- lib/noticed/delivery_methods/discord.rb
|
71
72
|
- lib/noticed/delivery_methods/email.rb
|
72
73
|
- lib/noticed/delivery_methods/fcm.rb
|
@@ -101,7 +102,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
101
102
|
- !ruby/object:Gem::Version
|
102
103
|
version: '0'
|
103
104
|
requirements: []
|
104
|
-
rubygems_version: 3.
|
105
|
+
rubygems_version: 3.7.2
|
105
106
|
specification_version: 4
|
106
107
|
summary: Notifications for Ruby on Rails applications
|
107
108
|
test_files: []
|