bullet_train-outgoing_webhooks 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +11 -26
  4. data/Rakefile +5 -11
  5. data/app/assets/config/bullet_train_outgoing_webhooks_web_manifest.js +0 -0
  6. data/app/controllers/account/webhooks/outgoing/deliveries_controller.rb +79 -0
  7. data/app/controllers/account/webhooks/outgoing/delivery_attempts_controller.rb +80 -0
  8. data/app/controllers/account/webhooks/outgoing/endpoints_controller.rb +79 -0
  9. data/app/views/account/webhooks/outgoing/deliveries/_breadcrumbs.html.erb +8 -0
  10. data/app/views/account/webhooks/outgoing/deliveries/_delivery.json.jbuilder +10 -0
  11. data/app/views/account/webhooks/outgoing/deliveries/_form.html.erb +21 -0
  12. data/app/views/account/webhooks/outgoing/deliveries/_index.html.erb +73 -0
  13. data/app/views/account/webhooks/outgoing/deliveries/_menu_item.html.erb +10 -0
  14. data/app/views/account/webhooks/outgoing/deliveries/_success_indicator.html.erb +7 -0
  15. data/app/views/account/webhooks/outgoing/deliveries/edit.html.erb +12 -0
  16. data/app/views/account/webhooks/outgoing/deliveries/index.html.erb +6 -0
  17. data/app/views/account/webhooks/outgoing/deliveries/index.json.jbuilder +1 -0
  18. data/app/views/account/webhooks/outgoing/deliveries/new.html.erb +12 -0
  19. data/app/views/account/webhooks/outgoing/deliveries/show.html.erb +37 -0
  20. data/app/views/account/webhooks/outgoing/deliveries/show.json.jbuilder +1 -0
  21. data/app/views/account/webhooks/outgoing/delivery_attempts/_breadcrumbs.html.erb +8 -0
  22. data/app/views/account/webhooks/outgoing/delivery_attempts/_delivery_attempt.json.jbuilder +12 -0
  23. data/app/views/account/webhooks/outgoing/delivery_attempts/_form.html.erb +22 -0
  24. data/app/views/account/webhooks/outgoing/delivery_attempts/_index.html.erb +69 -0
  25. data/app/views/account/webhooks/outgoing/delivery_attempts/_menu_item.html.erb +10 -0
  26. data/app/views/account/webhooks/outgoing/delivery_attempts/_success_indicator.html.erb +7 -0
  27. data/app/views/account/webhooks/outgoing/delivery_attempts/edit.html.erb +12 -0
  28. data/app/views/account/webhooks/outgoing/delivery_attempts/index.html.erb +6 -0
  29. data/app/views/account/webhooks/outgoing/delivery_attempts/index.json.jbuilder +1 -0
  30. data/app/views/account/webhooks/outgoing/delivery_attempts/new.html.erb +12 -0
  31. data/app/views/account/webhooks/outgoing/delivery_attempts/show.html.erb +32 -0
  32. data/app/views/account/webhooks/outgoing/delivery_attempts/show.json.jbuilder +1 -0
  33. data/app/views/account/webhooks/outgoing/endpoints/_breadcrumbs.html.erb +8 -0
  34. data/app/views/account/webhooks/outgoing/endpoints/_endpoint.json.jbuilder +10 -0
  35. data/app/views/account/webhooks/outgoing/endpoints/_form.html.erb +21 -0
  36. data/app/views/account/webhooks/outgoing/endpoints/_index.html.erb +62 -0
  37. data/app/views/account/webhooks/outgoing/endpoints/_menu_item.html.erb +10 -0
  38. data/app/views/account/webhooks/outgoing/endpoints/edit.html.erb +12 -0
  39. data/app/views/account/webhooks/outgoing/endpoints/index.html.erb +6 -0
  40. data/app/views/account/webhooks/outgoing/endpoints/index.json.jbuilder +1 -0
  41. data/app/views/account/webhooks/outgoing/endpoints/new.html.erb +12 -0
  42. data/app/views/account/webhooks/outgoing/endpoints/show.html.erb +42 -0
  43. data/app/views/account/webhooks/outgoing/endpoints/show.json.jbuilder +1 -0
  44. data/config/locales/en/webhooks/outgoing/deliveries.en.yml +112 -0
  45. data/config/locales/en/webhooks/outgoing/delivery_attempts.en.yml +122 -0
  46. data/config/locales/en/webhooks/outgoing/endpoints.en.yml +108 -0
  47. data/config/locales/en/webhooks/outgoing/events.en.yml +10 -0
  48. data/config/routes.rb +18 -0
  49. data/lib/bullet_train/outgoing_webhooks/engine.rb +6 -0
  50. data/lib/bullet_train/outgoing_webhooks/version.rb +1 -3
  51. data/lib/bullet_train/outgoing_webhooks.rb +2 -19
  52. data/lib/tasks/bullet_train/outgoing_webhooks_tasks.rake +4 -0
  53. metadata +58 -75
  54. data/.standard.yml +0 -2
  55. data/CHANGELOG.md +0 -5
  56. data/CODE_OF_CONDUCT.md +0 -84
  57. data/Gemfile +0 -12
  58. data/Gemfile.lock +0 -194
  59. data/LICENSE.txt +0 -21
  60. data/bin/console +0 -15
  61. data/bin/setup +0 -8
  62. data/lib/jobs/webhooks/outgoing/delivery_job.rb +0 -9
  63. data/lib/models/concerns/webhooks/outgoing/has_uuid.rb +0 -21
  64. data/lib/models/concerns/webhooks/outgoing/issuing_model.rb +0 -57
  65. data/lib/models/concerns/webhooks/outgoing/team_support.rb +0 -15
  66. data/lib/models/webhooks/outgoing/delivery.rb +0 -62
  67. data/lib/models/webhooks/outgoing/delivery_attempt.rb +0 -49
  68. data/lib/models/webhooks/outgoing/endpoint.rb +0 -22
  69. data/lib/models/webhooks/outgoing/event.rb +0 -41
  70. data/lib/models/webhooks/outgoing/event_type.rb +0 -15
  71. data/lib/models/webhooks/outgoing.rb +0 -11
  72. data/lib/models/webhooks.rb +0 -2
  73. data/sig/bullet_train/outgoing_webhooks.rbs +0 -6
@@ -0,0 +1,69 @@
1
+ <% delivery = @delivery || @delivery %>
2
+ <% context ||= delivery %>
3
+ <% collection ||= :delivery_attempts %>
4
+ <% hide_actions ||= false %>
5
+ <% hide_back ||= false %>
6
+
7
+ <%= render 'account/shared/box' do |p| %>
8
+ <% p.content_for :title, t(".contexts.#{context.class.name.underscore}.header") %>
9
+ <% p.content_for :description do %>
10
+ <%= t(".contexts.#{context.class.name.underscore}.description") %>
11
+ <% end %>
12
+
13
+ <% p.content_for :table do %>
14
+ <% if delivery_attempts.any? %>
15
+ <table class="table">
16
+ <thead>
17
+ <tr>
18
+ <th><%= t('.fields.attempt_number.heading') %></th>
19
+ <th><%= t('.fields.created_at.heading') %></th>
20
+ <th class="text-center"><%= t('.fields.status.heading') %></th>
21
+ <th class="text-center"><%= t('.fields.response_code.heading') %></th>
22
+ <%# 🚅 super scaffolding will insert new field headers above this line. %>
23
+ <th class="text-right"></th>
24
+ </tr>
25
+ </thead>
26
+ <tbody>
27
+ <% delivery_attempts.each do |delivery_attempt| %>
28
+ <% with_attribute_settings object: delivery_attempt do %>
29
+ <tr data-id="<%= delivery_attempt.id %>">
30
+ <td><%= render 'shared/attributes/text', attribute: :attempt_number, url: [:account, delivery_attempt] %></td>
31
+ <td><%= render 'shared/attributes/date_and_time', attribute: :created_at %></td>
32
+ <td class="text-center"><%= render 'shared/attributes/attempt', attribute: :status, success_method: :successful?, attempting_method: :still_attempting?, failure_method: :failed? %></td>
33
+ <td class="text-center"><%= render 'shared/attributes/code', attribute: :response_code %></td>
34
+ <%# 🚅 super scaffolding will insert new fields above this line. %>
35
+ <td class="buttons">
36
+ <% unless hide_actions %>
37
+ <% if can? :show, delivery_attempt %>
38
+ <%= link_to t('.buttons.shorthand.show'), [:account, delivery_attempt], class: 'button-secondary button-smaller' %>
39
+ <% end %>
40
+ <% if can? :edit, delivery_attempt %>
41
+ <%= link_to t('.buttons.shorthand.edit'), [:edit, :account, delivery_attempt], class: 'button-secondary button-smaller' %>
42
+ <% end %>
43
+ <% if can? :destroy, delivery_attempt %>
44
+ <%= button_to t('.buttons.shorthand.destroy'), [:account, delivery_attempt], method: :delete, data: { confirm: t('.buttons.confirmations.destroy', model_locales(delivery_attempt)) }, class: 'button-secondary button-smaller' %>
45
+ <% end %>
46
+ <% end %>
47
+ </td>
48
+ </tr>
49
+ <% end %>
50
+ <% end %>
51
+ </tbody>
52
+ </table>
53
+ <% end %>
54
+ <% end %>
55
+
56
+ <% p.content_for :actions do %>
57
+ <% unless hide_actions %>
58
+ <% if context == delivery %>
59
+ <% if can? :create, Webhooks::Outgoing::DeliveryAttempt.new(delivery: delivery) %>
60
+ <%= link_to t('.buttons.new'), [:new, :account, delivery, :delivery_attempt], class: "#{first_button_primary(:delivery_attempt)} new" %>
61
+ <% end %>
62
+ <% end %>
63
+
64
+ <% unless hide_back %>
65
+ <%= link_to t('global.buttons.back'), [:account, context], class: "#{first_button_primary(:delivery_attempt)} back" %>
66
+ <% end %>
67
+ <% end %>
68
+ <% end %>
69
+ <% end %>
@@ -0,0 +1,10 @@
1
+ <% if can? :read, Webhooks::Outgoing::DeliveryAttempt.new(team: current_team) %>
2
+ <%= render 'account/shared/menu/item', {
3
+ url: main_app.polymorphic_path([:account, current_team, :webhooks_outgoing_delivery_attempts]),
4
+ label: t('webhooks/outgoing/delivery_attempts.navigation.label'),
5
+ } do |p| %>
6
+ <% p.content_for :icon do %>
7
+ <i class="<%= t('webhooks/outgoing/delivery_attempts.navigation.icon') %>"></i>
8
+ <% end %>
9
+ <% end %>
10
+ <% end %>
@@ -0,0 +1,7 @@
1
+ <% if delivery_attempt.successful? %>
2
+ <div class="square-icon text-success"><i class="ti-check"></i></div>
3
+ <% elsif delivery_attempt.still_attempting? %>
4
+ <div class="square-icon"><i class="ti-reload rotating"></i></div>
5
+ <% else %>
6
+ <div class="square-icon text-danger"><i class="ti-close"></i></div>
7
+ <% end %>
@@ -0,0 +1,12 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'account/shared/box', divider: true do |p| %>
5
+ <% p.content_for :title, t('.header') %>
6
+ <% p.content_for :description, t('.description') %>
7
+ <% p.content_for :body do %>
8
+ <%= render 'form', delivery_attempt: @delivery_attempt %>
9
+ <% end %>
10
+ <% end %>
11
+ <% end %>
12
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'index', delivery_attempts: @delivery_attempts %>
5
+ <% end %>
6
+ <% end %>
@@ -0,0 +1 @@
1
+ json.array! @delivery_attempts, partial: "webhooks/outgoing/delivery_attempts/delivery_attempt", as: :delivery_attempt
@@ -0,0 +1,12 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'account/shared/box', divider: true do |p| %>
5
+ <% p.content_for :title, t('.header') %>
6
+ <% p.content_for :description, t('.description') %>
7
+ <% p.content_for :body do %>
8
+ <%= render 'form', delivery_attempt: @delivery_attempt %>
9
+ <% end %>
10
+ <% end %>
11
+ <% end %>
12
+ <% end %>
@@ -0,0 +1,32 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section').html_safe %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'account/shared/box', divider: true do |p| %>
5
+ <% p.content_for :title, t('.header') %>
6
+ <% p.content_for :description do %>
7
+ <%= t('.description') %>
8
+ <%= t('.manage_description') if can? :manage, @delivery_attempt %>
9
+ <% end %>
10
+
11
+ <% p.content_for :body do %>
12
+ <% with_attribute_settings object: @delivery_attempt, strategy: :label do %>
13
+ <%= render 'shared/attributes/text', attribute: :attempt_number %>
14
+ <%= render 'shared/attributes/attempt', attribute: :status, success_method: :successful?, attempting_method: :still_attempting?, failure_method: :failed? %>
15
+ <%= render 'shared/attributes/code', attribute: :response_code %>
16
+ <%= render 'shared/attributes/code', attribute: :response_message %>
17
+ <%= render 'shared/attributes/block', attribute: :response_body %>
18
+ <%= render 'shared/attributes/code', attribute: :error_message %>
19
+ <%# 🚅 super scaffolding will insert new fields above this line. %>
20
+ <% end %>
21
+ <% end %>
22
+
23
+ <% p.content_for :actions do %>
24
+ <%= link_to t('.buttons.edit'), [:edit, :account, @delivery_attempt], class: first_button_primary if can? :edit, @delivery_attempt %>
25
+ <%= button_to t('.buttons.destroy'), [:account, @delivery_attempt], method: :delete, class: first_button_primary, data: { confirm: t('.buttons.confirmations.destroy', model_locales(@delivery_attempt)) } if can? :destroy, @delivery_attempt %>
26
+ <%= link_to t('global.buttons.back'), [:account, @delivery, :delivery_attempts], class: first_button_primary %>
27
+ <% end %>
28
+ <% end %>
29
+
30
+ <%# 🚅 super scaffolding will insert new children above this line. %>
31
+ <% end %>
32
+ <% end %>
@@ -0,0 +1 @@
1
+ json.partial! "webhooks/outgoing/delivery_attempts/delivery_attempt", delivery_attempt: @delivery_attempt
@@ -0,0 +1,8 @@
1
+ <% endpoint ||= @endpoint %>
2
+ <% team ||= @team || endpoint&.team %>
3
+ <%= render 'account/teams/breadcrumbs', team: team %>
4
+ <%= render 'account/shared/breadcrumb', label: t('.label'), url: [:account, team, :webhooks_outgoing_endpoints] %>
5
+ <% if endpoint&.persisted? %>
6
+ <%= render 'account/shared/breadcrumb', label: endpoint.label_string, url: [:account, endpoint] %>
7
+ <% end %>
8
+ <%= render 'account/shared/breadcrumbs/actions', only_for: 'webhooks/outgoing/endpoints' %>
@@ -0,0 +1,10 @@
1
+ json.extract! endpoint,
2
+ :id,
3
+ :team_id,
4
+ :name,
5
+ :url,
6
+ :event_type_ids,
7
+ # 🚅 super scaffolding will insert new fields above this line.
8
+ :created_at,
9
+ :updated_at
10
+ json.url account_webhooks_outgoing_endpoint_url(endpoint, format: :json)
@@ -0,0 +1,21 @@
1
+ <%= form_with model: endpoint, url: (endpoint.persisted? ? [:account, endpoint] : [:account, @team, :webhooks_outgoing_endpoints]), local: true, class: 'form' do |form| %>
2
+ <%= render 'account/shared/forms/errors', form: form %>
3
+
4
+ <% with_field_settings form: form do %>
5
+ <%= render 'shared/fields/text_field', method: :name, options: {autofocus: true} %>
6
+ <%= render 'shared/fields/text_field', method: :url %>
7
+ <%= render 'shared/fields/super_select', method: :event_type_ids, html_options: {multiple: true},
8
+ choices: @endpoint.valid_event_types.map { |event_type| [event_type.label_string, event_type.id] } %>
9
+ <%# 🚅 super scaffolding will insert new fields above this line. %>
10
+ <% end %>
11
+
12
+ <div class="buttons">
13
+ <%= form.submit (form.object.persisted? ? t('.buttons.update') : t('.buttons.create')), class: "button" %>
14
+ <% if form.object.persisted? %>
15
+ <%= link_to t('global.buttons.cancel'), [:account, endpoint], class: "button-secondary" %>
16
+ <% else %>
17
+ <%= link_to t('global.buttons.cancel'), [:account, @team, :webhooks_outgoing_endpoints], class: "button-secondary" %>
18
+ <% end %>
19
+ </div>
20
+
21
+ <% end %>
@@ -0,0 +1,62 @@
1
+ <% team = @team || @team %>
2
+ <% context ||= team %>
3
+ <% collection ||= :webhooks_outgoing_endpoints %>
4
+ <% hide_actions ||= false %>
5
+ <% hide_back ||= false %>
6
+
7
+ <%= render 'account/shared/box' do |p| %>
8
+ <% p.content_for :title, t(".contexts.#{context.class.name.underscore}.header") %>
9
+ <% p.content_for :description do %>
10
+ <%= t(".contexts.#{context.class.name.underscore}.description") %>
11
+ <% end %>
12
+
13
+ <% p.content_for :table do %>
14
+ <% if endpoints.any? %>
15
+ <table class="table">
16
+ <thead>
17
+ <tr>
18
+ <th><%= t('.fields.name.heading') %></th>
19
+ <th><%= t('.fields.url.heading') %></th>
20
+ <%# 🚅 super scaffolding will insert new field headers above this line. %>
21
+ <th class="text-right"></th>
22
+ </tr>
23
+ </thead>
24
+ <tbody>
25
+ <% endpoints.each do |endpoint| %>
26
+ <% with_attribute_settings object: endpoint do %>
27
+ <tr data-id="<%= endpoint.id %>">
28
+ <td><%= render 'shared/attributes/text', attribute: :name, url: [:account, endpoint] %></td>
29
+ <td><%= render 'shared/attributes/code', attribute: :url %></td>
30
+ <%# 🚅 super scaffolding will insert new fields above this line. %>
31
+ <td class="buttons">
32
+ <% unless hide_actions %>
33
+ <% if can? :edit, endpoint %>
34
+ <%= link_to t('.buttons.shorthand.edit'), [:edit, :account, endpoint], class: 'button-secondary button-smaller' %>
35
+ <% end %>
36
+ <% if can? :destroy, endpoint %>
37
+ <%= button_to t('.buttons.shorthand.destroy'), [:account, endpoint], method: :delete, data: { confirm: t('.buttons.confirmations.destroy', model_locales(endpoint)) }, class: 'button-secondary button-smaller' %>
38
+ <% end %>
39
+ <% end %>
40
+ </td>
41
+ </tr>
42
+ <% end %>
43
+ <% end %>
44
+ </tbody>
45
+ </table>
46
+ <% end %>
47
+ <% end %>
48
+
49
+ <% p.content_for :actions do %>
50
+ <% unless hide_actions %>
51
+ <% if context == team %>
52
+ <% if can? :create, Webhooks::Outgoing::Endpoint.new(team: team) %>
53
+ <%= link_to t('.buttons.new'), [:new, :account, team, :webhooks_outgoing_endpoint], class: "#{first_button_primary(:webhooks_outgoing_endpoint)} new" %>
54
+ <% end %>
55
+ <% end %>
56
+
57
+ <% unless hide_back %>
58
+ <%= link_to t('global.buttons.back'), [:account, context], class: "#{first_button_primary(:webhooks_outgoing_endpoint)} back" %>
59
+ <% end %>
60
+ <% end %>
61
+ <% end %>
62
+ <% end %>
@@ -0,0 +1,10 @@
1
+ <% if can? :read, Webhooks::Outgoing::Endpoint.new(team: current_team) %>
2
+ <%= render 'account/shared/menu/item', {
3
+ url: main_app.polymorphic_path([:account, current_team, :webhooks_outgoing_endpoints]),
4
+ label: t('webhooks/outgoing/endpoints.navigation.label'),
5
+ } do |p| %>
6
+ <% p.content_for :icon do %>
7
+ <i class="<%= t('webhooks/outgoing/endpoints.navigation.icon') %>"></i>
8
+ <% end %>
9
+ <% end %>
10
+ <% end %>
@@ -0,0 +1,12 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'account/shared/box', divider: true do |p| %>
5
+ <% p.content_for :title, t('.header') %>
6
+ <% p.content_for :description, t('.description') %>
7
+ <% p.content_for :body do %>
8
+ <%= render 'form', endpoint: @endpoint %>
9
+ <% end %>
10
+ <% end %>
11
+ <% end %>
12
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'index', endpoints: @endpoints %>
5
+ <% end %>
6
+ <% end %>
@@ -0,0 +1 @@
1
+ json.array! @endpoints, partial: "webhooks/outgoing/endpoints/endpoint", as: :endpoint
@@ -0,0 +1,12 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'account/shared/box', divider: true do |p| %>
5
+ <% p.content_for :title, t('.header') %>
6
+ <% p.content_for :description, t('.description') %>
7
+ <% p.content_for :body do %>
8
+ <%= render 'form', endpoint: @endpoint %>
9
+ <% end %>
10
+ <% end %>
11
+ <% end %>
12
+ <% end %>
@@ -0,0 +1,42 @@
1
+ <%= render 'account/shared/page' do |p| %>
2
+ <% p.content_for :title, t('.section') %>
3
+ <% p.content_for :body do %>
4
+ <%= render 'account/shared/box', divider: true do |p| %>
5
+ <% p.content_for :title, t('.header') %>
6
+ <% p.content_for :description do %>
7
+ <%= t('.description') %>
8
+ <%= t('.manage_description') if can? :manage, @endpoint %>
9
+ <% end %>
10
+
11
+ <% p.content_for :body do %>
12
+ <% with_attribute_settings object: @endpoint, strategy: :label do %>
13
+ <%= render 'shared/attributes/text', attribute: :name %>
14
+ <%= render 'shared/attributes/code', attribute: :url %>
15
+ <% # TODO We should make the `has_many` attribute partial configurable enough to handle this use case. %>
16
+ <%= render 'shared/attributes/attribute', attribute: :event_types do %>
17
+ <% if @endpoint.event_type_ids.any? %>
18
+ <% @endpoint.event_types.map do |event_type| %>
19
+ <% capture do %>
20
+ <code><%= event_type.name %></code>
21
+ <% end %>
22
+ <% end.map(&:strip).to_sentence.html_safe %>
23
+ <% else %>
24
+ <% # TODO It feels like a Nice Partials bug that we can't just do `t('.fields.event_types.all')` here. %>
25
+ <%= t('webhooks/outgoing/endpoints.fields.event_types.all') %>
26
+ <% end %>
27
+ <% end %>
28
+ <%# 🚅 super scaffolding will insert new fields above this line. %>
29
+ <% end %>
30
+ <% end %>
31
+
32
+ <% p.content_for :actions do %>
33
+ <%= link_to t('.buttons.edit'), [:edit, :account, @endpoint], class: first_button_primary if can? :edit, @endpoint %>
34
+ <%= button_to t('.buttons.destroy'), [:account, @endpoint], method: :delete, class: first_button_primary, data: { confirm: t('.buttons.confirmations.destroy', model_locales(@endpoint)) } if can? :destroy, @endpoint %>
35
+ <%= link_to t('global.buttons.back'), [:account, @team, :webhooks_outgoing_endpoints], class: first_button_primary %>
36
+ <% end %>
37
+ <% end %>
38
+
39
+ <%= render 'account/webhooks/outgoing/deliveries/index', deliveries: @endpoint.deliveries, hide_back: true %>
40
+ <%# 🚅 super scaffolding will insert new children above this line. %>
41
+ <% end %>
42
+ <% end %>
@@ -0,0 +1 @@
1
+ json.partial! "webhooks/outgoing/endpoints/endpoint", endpoint: @endpoint
@@ -0,0 +1,112 @@
1
+ en:
2
+ webhooks/outgoing/deliveries: &deliveries
3
+ label: &label Deliveries
4
+ breadcrumbs:
5
+ label: *label
6
+ navigation:
7
+ label: *label
8
+ icon: fal fa-puzzle-piece
9
+ buttons: &buttons
10
+ new: Add New Delivery
11
+ create: Create Delivery
12
+ edit: Edit Delivery
13
+ update: Update Delivery
14
+ destroy: Remove Delivery
15
+ shorthand:
16
+ show: Details
17
+ edit: Edit
18
+ destroy: Delete
19
+ confirmations:
20
+ # TODO customize for your use-case.
21
+ destroy: Are you sure you want to remove %{delivery_name}? This will also remove it's associated data. This can't be undone.
22
+ fields: &fields
23
+ id:
24
+ _: &id Delivery ID
25
+ label: *id
26
+ heading: *id
27
+
28
+ event_id: &event
29
+ _: &event_id Event
30
+ label: *event_id
31
+ heading: *event_id
32
+ placeholder: Select a Event
33
+ event: *event
34
+
35
+ endpoint_url:
36
+ _: &endpoint_url Endpoint URL
37
+ label: *endpoint_url
38
+ heading: *endpoint_url
39
+
40
+ delivered_at:
41
+ _: &delivered_at Delivered At
42
+ label: *delivered_at
43
+ heading: *delivered_at
44
+
45
+ status:
46
+ heading: Status
47
+
48
+ # 🚅 super scaffolding will insert new fields above this line.
49
+ created_at:
50
+ _: &created_at Issued At
51
+ label: *created_at
52
+ heading: *created_at
53
+ updated_at:
54
+ _: &updated_at Updated
55
+ label: *updated_at
56
+ heading: *updated_at
57
+ api:
58
+ endpoint_id: Absolutely Abstract Endpoint ID
59
+ collection_actions: "Collection Actions for Deliveries"
60
+ index: "List Deliveries"
61
+ create: "Add a New Delivery"
62
+ member_actions: "Actions for an Individual Delivery"
63
+ show: "Retrieve a Delivery"
64
+ update: "Update a Delivery"
65
+ destroy: "Delete a Delivery"
66
+ fields: *fields
67
+ index:
68
+ section: "%{endpoints_possessive} Deliveries"
69
+ contexts:
70
+ webhooks/outgoing/endpoint:
71
+ header: Deliveries
72
+ description: Below is a list of webhook deliveries that have been attempted for %{endpoint_name}.
73
+ description_empty: No Deliveries have been added for %{endpoint_name}.
74
+ fields: *fields
75
+ buttons: *buttons
76
+ show:
77
+ section: "Delivery of Event <code>%{delivery_name}</code> to %{endpoint_name}"
78
+ header: Webhook Delivery Details
79
+ description: Below are the available details for the event we've attempted to deliver.
80
+ manage_description: You'll also find options for updating these details or removing %{delivery_name} from %{endpoint_name} entirely.
81
+ fields: *fields
82
+ buttons: *buttons
83
+ form: &form
84
+ buttons: *buttons
85
+ fields: *fields
86
+ new:
87
+ section: "New Delivery for %{endpoint_name}"
88
+ header: New Delivery Details
89
+ description: Please provide the details of the new Delivery you'd like to add to %{endpoint_name}.
90
+ form: *form
91
+ edit:
92
+ section: "%{delivery_name}"
93
+ header: Edit Delivery Details
94
+ description: You can update the details or settings for %{delivery_name} below.
95
+ form: *form
96
+ notifications:
97
+ created: Delivery was successfully created.
98
+ updated: Delivery was successfully updated.
99
+ destroyed: Delivery was successfully destroyed.
100
+ account:
101
+ webhooks:
102
+ outgoing:
103
+ deliveries: *deliveries
104
+ activerecord:
105
+ attributes:
106
+ webhooks/outgoing/delivery:
107
+ event_id: *event_id
108
+ endpoint_url: *endpoint_url
109
+ delivered_at: *delivered_at
110
+ # 🚅 super scaffolding will insert new activerecord attributes above this line.
111
+ created_at: *created_at
112
+ updated_at: *updated_at
@@ -0,0 +1,122 @@
1
+ en:
2
+ webhooks/outgoing/delivery_attempts: &delivery_attempts
3
+ label: &label Delivery Attempts
4
+ breadcrumbs:
5
+ label: *label
6
+ navigation:
7
+ label: *label
8
+ icon: fal fa-puzzle-piece
9
+ buttons: &buttons
10
+ new: Add New Delivery Attempt
11
+ create: Create Delivery Attempt
12
+ edit: Edit Delivery Attempt
13
+ update: Update Delivery Attempt
14
+ destroy: Remove Delivery Attempt
15
+ shorthand:
16
+ show: Details
17
+ edit: Edit
18
+ destroy: Delete
19
+ confirmations:
20
+ # TODO customize for your use-case.
21
+ destroy: Are you sure you want to remove %{delivery_attempt_name}? This will also remove it's associated data. This can't be undone.
22
+ fields: &fields
23
+ id:
24
+ _: &id Delivery Attempt ID
25
+ label: *id
26
+ heading: *id
27
+
28
+ response_code:
29
+ _: &response_code Response Code
30
+ label: *response_code
31
+ heading: *response_code
32
+
33
+ response_body:
34
+ _: &response_body Response Body
35
+ label: *response_body
36
+ heading: *response_body
37
+
38
+ response_message:
39
+ _: &response_message Response Message
40
+ label: *response_message
41
+ heading: *response_message
42
+
43
+ error_message:
44
+ _: &error_message Error Message
45
+ label: *error_message
46
+ heading: *error_message
47
+
48
+ attempt_number:
49
+ _: &attempt_number Attempt Number
50
+ label: *attempt_number
51
+ heading: *attempt_number
52
+
53
+ status:
54
+ heading: Status
55
+
56
+ # 🚅 super scaffolding will insert new fields above this line.
57
+ created_at:
58
+ _: &created_at Attempted At
59
+ label: *created_at
60
+ heading: *created_at
61
+ updated_at:
62
+ _: &updated_at Updated
63
+ label: *updated_at
64
+ heading: *updated_at
65
+ api:
66
+ delivery_id: Absolutely Abstract Delivery ID
67
+ collection_actions: "Collection Actions for Delivery Attempts"
68
+ index: "List Delivery Attempts"
69
+ create: "Add a New Delivery Attempt"
70
+ member_actions: "Actions for an Individual Delivery Attempt"
71
+ show: "Retrieve a Delivery Attempt"
72
+ update: "Update a Delivery Attempt"
73
+ destroy: "Delete a Delivery Attempt"
74
+ fields: *fields
75
+ index:
76
+ section: "%{deliveries_possessive} Delivery Attempts"
77
+ contexts:
78
+ webhooks/outgoing/delivery:
79
+ header: Delivery Attempts
80
+ description: Below is an overview of individual attempts to deliver this event.
81
+ description_empty: We haven't attempted to deliver this event.
82
+ fields: *fields
83
+ buttons: *buttons
84
+ show:
85
+ section: "%{delivery_attempt_name} to Deliver <code>%{delivery_name}</code>"
86
+ header: Delivery Attempt Details
87
+ description: Below are the details we have for %{delivery_attempt_name}.
88
+ manage_description: You'll also find options for updating these details or removing %{delivery_attempt_name} from %{delivery_name} entirely.
89
+ fields: *fields
90
+ buttons: *buttons
91
+ form: &form
92
+ buttons: *buttons
93
+ fields: *fields
94
+ new:
95
+ section: "New Delivery Attempt for %{delivery_name}"
96
+ header: New Delivery Attempt Details
97
+ description: Please provide the details of the new Delivery Attempt you'd like to add to %{delivery_name}.
98
+ form: *form
99
+ edit:
100
+ section: "%{delivery_attempt_name}"
101
+ header: Edit Delivery Attempt Details
102
+ description: You can update the details or settings for %{delivery_attempt_name} below.
103
+ form: *form
104
+ notifications:
105
+ created: Delivery Attempt was successfully created.
106
+ updated: Delivery Attempt was successfully updated.
107
+ destroyed: Delivery Attempt was successfully destroyed.
108
+ account:
109
+ webhooks:
110
+ outgoing:
111
+ delivery_attempts: *delivery_attempts
112
+ activerecord:
113
+ attributes:
114
+ webhooks/outgoing/delivery_attempt:
115
+ response_code: *response_code
116
+ response_body: *response_body
117
+ response_message: *response_message
118
+ error_message: *error_message
119
+ attempt_number: *attempt_number
120
+ # 🚅 super scaffolding will insert new activerecord attributes above this line.
121
+ created_at: *created_at
122
+ updated_at: *updated_at