workarea-admin 3.5.19 → 3.5.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/workarea/admin/modules/new_navigation_taxons.js +2 -1
  3. data/app/controllers/workarea/admin/create_release_undos_controller.rb +19 -5
  4. data/app/controllers/workarea/admin/impersonations_controller.rb +2 -1
  5. data/app/controllers/workarea/admin/releases_controller.rb +1 -4
  6. data/app/helpers/workarea/admin/application_helper.rb +4 -0
  7. data/app/helpers/workarea/admin/changesets_helper.rb +20 -4
  8. data/app/view_models/workarea/admin/changeset_summary_view_model.rb +39 -0
  9. data/app/view_models/workarea/admin/product_view_model.rb +5 -8
  10. data/app/view_models/workarea/admin/release_view_model.rb +22 -3
  11. data/app/views/workarea/admin/catalog_categories/edit.html.haml +3 -0
  12. data/app/views/workarea/admin/catalog_products/_cards.html.haml +1 -1
  13. data/app/views/workarea/admin/changesets/index.html.haml +30 -1
  14. data/app/views/workarea/admin/create_release_undos/new.html.haml +6 -3
  15. data/app/views/workarea/admin/create_release_undos/review.html.haml +8 -2
  16. data/app/views/workarea/admin/navigation_menus/_summary.html.haml +1 -1
  17. data/app/views/workarea/admin/navigation_redirects/index.html.haml +5 -0
  18. data/app/views/workarea/admin/pricing_discounts/properties/_product_attribute.html.haml +1 -1
  19. data/app/views/workarea/admin/releases/_cards.html.haml +8 -67
  20. data/app/views/workarea/admin/releases/show.html.haml +8 -0
  21. data/app/views/workarea/admin/tax_categories/_cards.html.haml +1 -1
  22. data/app/views/workarea/admin/tax_rates/edit.html.haml +3 -3
  23. data/app/views/workarea/admin/tax_rates/index.html.haml +3 -3
  24. data/app/views/workarea/admin/tax_rates/new.html.haml +3 -3
  25. data/app/views/workarea/admin/toolbar/show.html.haml +1 -0
  26. data/app/views/workarea/admin/users/insights.html.haml +12 -0
  27. data/config/locales/en.yml +25 -36
  28. data/config/routes.rb +3 -5
  29. data/test/helpers/workarea/admin/changesets_helper_test.rb +24 -0
  30. data/test/integration/workarea/admin/create_release_undos_integration_test.rb +27 -2
  31. data/test/integration/workarea/admin/impersonations_integration_test.rb +24 -1
  32. data/test/javascripts/fixtures/existing_navigation_taxon.html.haml +10 -0
  33. data/test/javascripts/new_navigation_taxons_spec.js +12 -1
  34. data/test/system/workarea/admin/assets_system_test.rb +1 -1
  35. data/test/system/workarea/admin/bookmarks_system_test.rb +2 -2
  36. data/test/system/workarea/admin/bulk_actions_system_test.rb +5 -5
  37. data/test/system/workarea/admin/comments_system_test.rb +1 -1
  38. data/test/system/workarea/admin/content_system_test.rb +1 -1
  39. data/test/system/workarea/admin/dashboard_system_test.rb +1 -1
  40. data/test/system/workarea/admin/impersonation_system_test.rb +2 -5
  41. data/test/system/workarea/admin/inventory_skus_system_test.rb +1 -1
  42. data/test/system/workarea/admin/menus_system_test.rb +1 -1
  43. data/test/system/workarea/admin/pricing_sku_prices_system_test.rb +3 -3
  44. data/test/system/workarea/admin/recommendations_system_test.rb +2 -2
  45. data/test/system/workarea/admin/releases_system_test.rb +51 -22
  46. data/test/system/workarea/admin/tax_categories_system_test.rb +6 -5
  47. data/test/system/workarea/admin/taxonomy_system_test.rb +2 -2
  48. data/test/system/workarea/admin/trash_system_test.rb +1 -1
  49. data/test/view_models/workarea/admin/product_view_model_test.rb +2 -2
  50. metadata +10 -9
  51. data/app/views/workarea/admin/releases/original.html.haml +0 -50
  52. data/app/views/workarea/admin/releases/undo.html.haml +0 -64
@@ -60,7 +60,7 @@ module Workarea
60
60
  click_link t('workarea.admin.catalog.dashboard_link')
61
61
 
62
62
  visit admin.catalog_products_path
63
- refute(page.has_content?('1 selected'))
63
+ refute_text('1 selected')
64
64
  end
65
65
 
66
66
  def test_persistence
@@ -85,7 +85,7 @@ module Workarea
85
85
  click_button t('workarea.admin.catalog_products.index.edit')
86
86
  click_link t('workarea.admin.form.cancel')
87
87
 
88
- refute(page.has_content?('3 selected'))
88
+ refute_text('3 selected')
89
89
  end
90
90
 
91
91
  def test_select_all
@@ -95,7 +95,7 @@ module Workarea
95
95
  assert(page.has_content?("5 #{t('workarea.admin.shared.bulk_actions.selected')}"))
96
96
 
97
97
  uncheck 'select_all'
98
- refute(page.has_content?(t('workarea.admin.shared.bulk_actions.selected')))
98
+ refute_text(t('workarea.admin.shared.bulk_actions.selected'))
99
99
 
100
100
  check 'select_all'
101
101
  uncheck "catalog_product_#{@products.fifth.id}"
@@ -103,14 +103,14 @@ module Workarea
103
103
  assert(page.has_content?("3 #{t('workarea.admin.shared.bulk_actions.selected')}"))
104
104
 
105
105
  check 'select_all'
106
- refute(page.has_content?(t('workarea.admin.shared.bulk_actions.selected')))
106
+ refute_text(t('workarea.admin.shared.bulk_actions.selected'))
107
107
 
108
108
  check "catalog_product_#{@products.fifth.id}"
109
109
  check "catalog_product_#{@products.fourth.id}"
110
110
  assert(page.has_content?("2 #{t('workarea.admin.shared.bulk_actions.selected')}"))
111
111
 
112
112
  check 'select_all'
113
- refute(page.has_content?(t('workarea.admin.shared.bulk_actions.selected')))
113
+ refute_text(t('workarea.admin.shared.bulk_actions.selected'))
114
114
  end
115
115
 
116
116
  def test_bulk_editing
@@ -39,7 +39,7 @@ module Workarea
39
39
 
40
40
  find_field('comment[body]').send_keys(['@'])
41
41
 
42
- refute(page.has_content?('Bar Baby'))
42
+ refute_text('Bar Baby')
43
43
  assert(page.has_content?('Baz Bat'))
44
44
 
45
45
  find('.tribute-container li', text: 'Baz Bat (baz@workarea.com)').click
@@ -35,7 +35,7 @@ module Workarea
35
35
 
36
36
  find('.content-block').click
37
37
  click_link t('workarea.admin.actions.delete')
38
- refute(page.has_selector?('.content-block'))
38
+ refute_selector('.content-block')
39
39
  end
40
40
 
41
41
  def test_reordering_content_blocks
@@ -64,7 +64,7 @@ module Workarea
64
64
  Workarea.config.hide_from_settings = %i(fooconfig)
65
65
 
66
66
  visit admin.settings_dashboards_path
67
- refute(page.has_content?('Fooconfig'))
67
+ refute_text('Fooconfig')
68
68
  end
69
69
  end
70
70
  end
@@ -34,12 +34,9 @@ module Workarea
34
34
  click_button 'Stop Impersonation'
35
35
  end
36
36
 
37
- assert_equal(admin.user_path(user), current_path)
37
+ assert_equal(storefront.root_path, current_path)
38
38
  assert(page.has_content?('Success'))
39
39
 
40
- find('.view').hover # Ensure tooltipster menu isn't open
41
- assert(page.has_content?('bcrouse@workarea.com'))
42
-
43
40
  visit storefront.users_account_path
44
41
  assert(page.has_no_content?('impersonated@workarea.com'))
45
42
 
@@ -52,7 +49,7 @@ module Workarea
52
49
  click_button 'Stop Impersonation'
53
50
  end
54
51
 
55
- assert_equal(admin.user_path(user), current_path)
52
+ assert_equal(admin.root_path, current_path)
56
53
  assert(page.has_content?('Success'))
57
54
  end
58
55
  end
@@ -28,7 +28,7 @@ module Workarea
28
28
 
29
29
  assert_current_path(admin.inventory_skus_path)
30
30
  assert(page.has_content?('Success'))
31
- refute(page.has_content?('SKU1'))
31
+ refute_text('SKU1')
32
32
  end
33
33
 
34
34
  def test_editing_a_non_existent_sku
@@ -39,7 +39,7 @@ module Workarea
39
39
  within('.navigation-builder__actions') { click_link 'Delete' }
40
40
 
41
41
  assert(page.has_content?('Success'))
42
- refute(page.has_content?('Foo'))
42
+ refute_text('Foo')
43
43
  end
44
44
 
45
45
  def test_managing_content_redirects_back
@@ -71,9 +71,9 @@ module Workarea
71
71
 
72
72
  row = find_all("table tr")[1]
73
73
  within(row) do
74
- refute(page.has_content?('$11.00'))
75
- refute(page.has_content?('$9.99'))
76
- refute(page.has_content?('1'))
74
+ refute_text('$11.00')
75
+ refute_text('$9.99')
76
+ refute_text('1')
77
77
  end
78
78
  end
79
79
  end
@@ -65,8 +65,8 @@ module Workarea
65
65
  assert(page.has_content?('Success'))
66
66
 
67
67
  click_link 'Recommendations'
68
- refute(page.has_selector?("option[value='#{product_2.id}']"))
69
- refute(page.has_selector?("option[value='#{product_3.id}']"))
68
+ refute_selector("option[value='#{product_2.id}']")
69
+ refute_selector("option[value='#{product_3.id}']")
70
70
  assert(page.has_ordered_text?('Custom', 'Similar Products', 'Also Purchased'))
71
71
 
72
72
  #
@@ -49,8 +49,8 @@ module Workarea
49
49
  click_link 'Published (1)'
50
50
  end
51
51
 
52
- refute(page.has_content?('Scheduled Release'))
53
- refute(page.has_content?('Unscheduled Release'))
52
+ refute_text('Scheduled Release')
53
+ refute_text('Unscheduled Release')
54
54
  assert(page.has_content?('Published Release'))
55
55
  end
56
56
 
@@ -124,6 +124,11 @@ module Workarea
124
124
  end
125
125
 
126
126
  visit admin.release_path(Release.first)
127
+ assert(page.has_content?('2 Products'))
128
+ assert(page.has_content?('1 Pricing Sku'))
129
+ assert(page.has_content?('1 Discount'))
130
+ assert(page.has_content?('1 System Page'))
131
+
127
132
  click_link t('workarea.admin.releases.cards.planned_changes.planned')
128
133
  assert(page.has_content?('Test Page'))
129
134
  assert(page.has_content?('Foo Bar'))
@@ -228,10 +233,7 @@ module Workarea
228
233
 
229
234
  visit admin.list_releases_path
230
235
  click_link 'Foo Release'
231
- click_link t('workarea.admin.releases.cards.undo.title')
232
-
233
- assert(page.has_content?(t('workarea.admin.releases.undo.undoing')))
234
- click_link "#{t('workarea.admin.releases.undo.build_an_undo_now')} →"
236
+ click_link t('workarea.admin.releases.show.build_undo')
235
237
 
236
238
  fill_in 'release[name]', with: 'Foo Bar Undo'
237
239
  click_button t('workarea.admin.create_release_undos.workflow.create_undo')
@@ -240,19 +242,9 @@ module Workarea
240
242
 
241
243
  click_link "#{t('workarea.admin.create_release_undos.workflow.done')} →"
242
244
  assert(page.has_content?('Foo Bar Undo'))
245
+ assert(page.has_content?('1 Content Page'))
243
246
 
244
- click_link t('workarea.admin.releases.cards.original.title')
245
- assert(page.has_content?('Foo Release'))
246
- assert(page.has_content?('Test Page'))
247
- assert(page.has_content?('Foo Bar'))
248
-
249
- within('.text.text--large', match: :first) { click_link 'Foo Release' }
250
- assert(page.has_content?('Foo Release'))
251
- assert(page.has_content?('Test Page'))
252
- assert(page.has_content?('Foo Bar'))
253
-
254
- click_link t('workarea.admin.releases.cards.undo.title')
255
- assert(page.has_content?('Foo Bar Undo'))
247
+ click_link t('workarea.admin.releases.cards.planned_changes.planned')
256
248
  assert(page.has_content?('Test Page'))
257
249
  assert(page.has_content?('Foo Bar'))
258
250
  end
@@ -277,7 +269,7 @@ module Workarea
277
269
 
278
270
  click_link t('workarea.admin.releases.calendar.next_week')
279
271
  wait_for_xhr
280
- refute(find('.calendar').has_content?('Foo Release'))
272
+ refute_text('Foo Release')
281
273
 
282
274
  click_link t('workarea.admin.releases.calendar.previous_week')
283
275
  wait_for_xhr
@@ -285,7 +277,7 @@ module Workarea
285
277
 
286
278
  click_link t('workarea.admin.releases.calendar.next_week')
287
279
  wait_for_xhr
288
- refute(find('.calendar').has_content?('Foo Release'))
280
+ refute_text('Foo Release')
289
281
 
290
282
  click_button t('workarea.admin.releases.calendar.today')
291
283
  wait_for_xhr
@@ -321,8 +313,8 @@ module Workarea
321
313
 
322
314
  visit admin.releases_path
323
315
 
324
- refute(page.has_content?('Release Five'))
325
- refute(page.has_content?('Release Six'))
316
+ refute_text('Release Five')
317
+ refute_text('Release Six')
326
318
 
327
319
  assert(
328
320
  page.has_content?(
@@ -341,6 +333,43 @@ module Workarea
341
333
  assert(page.has_content?('Release Six'))
342
334
  end
343
335
  end
336
+
337
+ def test_viewing_large_changesets
338
+ Workarea.config.per_page = 2
339
+
340
+ release = create_release
341
+ product_one = create_product(id: 'PROD1', name: 'Product One')
342
+ product_two = create_product(id: 'PROD2', name: 'Product Two')
343
+ content_page = create_page(name: 'Test Page')
344
+
345
+ release.as_current do
346
+ product_one.variants.first.update!(details: { 'Color' => 'Orange' })
347
+ product_two.update!(name: 'Test Product Changed')
348
+ content_page.update!(name: 'Test Page Changed')
349
+ end
350
+
351
+ visit admin.release_path(release)
352
+
353
+ assert(page.has_content?('2 Products'))
354
+ assert(page.has_content?('1 Content Page'))
355
+
356
+ click_link t('workarea.admin.releases.cards.planned_changes.planned')
357
+
358
+ assert(page.has_content?('2 Products'))
359
+ assert(page.has_content?('1 Content Page'))
360
+
361
+ assert(page.has_content?('Test Product Changed'))
362
+ assert(page.has_content?('Test Page Changed'))
363
+ assert(page.has_no_content?('Orange'))
364
+
365
+ assert(page.has_content?(t('workarea.admin.changesets.recent')))
366
+ assert(page.has_content?(t('workarea.admin.cards.more', amount: 1)))
367
+
368
+ click_link '2 Products'
369
+
370
+ assert(page.has_content?('Product One'))
371
+ assert(page.has_content?('Product Two'))
372
+ end
344
373
  end
345
374
  end
346
375
  end
@@ -74,9 +74,9 @@ module Workarea
74
74
  assert(page.has_content?('PA'))
75
75
  assert(page.has_content?('19106'))
76
76
 
77
- assert(page.has_content?('6.0%'))
78
- assert(page.has_content?('4.0%'))
79
- assert(page.has_content?('2.0%'))
77
+ assert(page.has_content?('6%'))
78
+ assert(page.has_content?('4%'))
79
+ assert(page.has_content?('2%'))
80
80
 
81
81
  assert(page.has_content?("#{Money.default_currency.symbol}5.00"))
82
82
  assert(page.has_content?("#{Money.default_currency.symbol}500.00"))
@@ -91,7 +91,7 @@ module Workarea
91
91
  click_link t('workarea.admin.actions.edit')
92
92
  end
93
93
 
94
- fill_in 'rate[country_percentage]', with: 0
94
+ fill_in 'rate[country_percentage]', with: 0.005
95
95
  fill_in 'rate[region_percentage]', with: 10
96
96
  fill_in 'rate[postal_code_percentage]', with: 20.5
97
97
 
@@ -100,7 +100,8 @@ module Workarea
100
100
  assert(page.has_content?('Success'))
101
101
 
102
102
  within '.index-table__row' do
103
- assert(page.has_content?('10.0%'))
103
+ assert(page.has_content?('0.005%'))
104
+ assert(page.has_content?('10%'))
104
105
  assert(page.has_content?('20.5%'))
105
106
  end
106
107
 
@@ -33,8 +33,8 @@ module Workarea
33
33
  click_button 'remove_taxon', match: :first
34
34
 
35
35
  assert(page.has_content?('Success'))
36
- refute(page.has_content?('First Taxon'))
37
- refute(page.has_content?('Second Taxon'))
36
+ refute_text('First Taxon')
37
+ refute_text('Second Taxon')
38
38
  end
39
39
  end
40
40
  end
@@ -20,7 +20,7 @@ module Workarea
20
20
  assert(page.has_content?('My Category'))
21
21
 
22
22
  visit admin.trash_index_path
23
- refute(page.has_content?('My Category'))
23
+ refute_text('My Category')
24
24
  end
25
25
 
26
26
  def test_restore_permission
@@ -21,7 +21,7 @@ module Workarea
21
21
  )
22
22
  end
23
23
 
24
- def test_options
24
+ def test_variant_details
25
25
  @view_model.variants.build(
26
26
  sku: 'SKU1',
27
27
  name: 'name',
@@ -40,7 +40,7 @@ module Workarea
40
40
 
41
41
  assert_equal(
42
42
  { 'Color' => ['Red', 'Black', 'White'], 'Size' => ['S', 'M', 'L'] },
43
- @view_model.options
43
+ @view_model.variant_details
44
44
  )
45
45
  end
46
46
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workarea-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.19
4
+ version: 3.5.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Crouse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-16 00:00:00.000000000 Z
11
+ date: 2020-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: workarea-core
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.5.19
19
+ version: 3.5.25
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.5.19
26
+ version: 3.5.25
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: workarea-storefront
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 3.5.19
33
+ version: 3.5.25
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 3.5.19
40
+ version: 3.5.25
41
41
  description: Provides site administration functionality for the Workarea Commerce
42
42
  Platform.
43
43
  email:
@@ -551,6 +551,7 @@ files:
551
551
  - app/view_models/workarea/admin/bulk_action_sequential_product_edit_view_model.rb
552
552
  - app/view_models/workarea/admin/category_view_model.rb
553
553
  - app/view_models/workarea/admin/changes_view_model.rb
554
+ - app/view_models/workarea/admin/changeset_summary_view_model.rb
554
555
  - app/view_models/workarea/admin/changeset_view_model.rb
555
556
  - app/view_models/workarea/admin/code_list_view_model.rb
556
557
  - app/view_models/workarea/admin/comment_view_model.rb
@@ -1065,9 +1066,7 @@ files:
1065
1066
  - app/views/workarea/admin/releases/index.html.haml
1066
1067
  - app/views/workarea/admin/releases/list.html.haml
1067
1068
  - app/views/workarea/admin/releases/new.html.haml
1068
- - app/views/workarea/admin/releases/original.html.haml
1069
1069
  - app/views/workarea/admin/releases/show.html.haml
1070
- - app/views/workarea/admin/releases/undo.html.haml
1071
1070
  - app/views/workarea/admin/reports/_export.html.haml
1072
1071
  - app/views/workarea/admin/reports/_group_by_time.html.haml
1073
1072
  - app/views/workarea/admin/reports/average_order_value.html.haml
@@ -1289,6 +1288,7 @@ files:
1289
1288
  - test/dummy/tmp/screenshots/.keep
1290
1289
  - test/helpers/workarea/admin/application_helper_test.rb
1291
1290
  - test/helpers/workarea/admin/buttons_helper_test.rb
1291
+ - test/helpers/workarea/admin/changesets_helper_test.rb
1292
1292
  - test/helpers/workarea/admin/content_helper_test.rb
1293
1293
  - test/helpers/workarea/admin/facets_helper_test.rb
1294
1294
  - test/helpers/workarea/admin/icons_helper_test.rb
@@ -1390,6 +1390,7 @@ files:
1390
1390
  - test/javascripts/fixtures/datepicker_fields.html.haml
1391
1391
  - test/javascripts/fixtures/datetimepicker_fields.html.haml
1392
1392
  - test/javascripts/fixtures/direct_upload.html.haml
1393
+ - test/javascripts/fixtures/existing_navigation_taxon.html.haml
1393
1394
  - test/javascripts/fixtures/help_lookup_button.haml
1394
1395
  - test/javascripts/fixtures/menu_editor_menu_list_sortable.html.haml
1395
1396
  - test/javascripts/fixtures/new_navigation_taxon.html.haml
@@ -1527,7 +1528,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1527
1528
  - !ruby/object:Gem::Version
1528
1529
  version: '0'
1529
1530
  requirements: []
1530
- rubygems_version: 3.0.3
1531
+ rubygems_version: 3.2.3
1531
1532
  signing_key:
1532
1533
  specification_version: 4
1533
1534
  summary: Admin for the Workarea Commerce Platform
@@ -1,50 +0,0 @@
1
- - @page_title = t('workarea.admin.releases.original.page_title', name: @release.name)
2
-
3
- .view
4
- .view__header
5
- .grid.grid--middle.grid--right
6
- .grid__cell.grid__cell--50
7
- .view__heading
8
- = link_to "↑ #{t('workarea.admin.releases.original.index_link')}", releases_path
9
- %h1= link_to @release.name, url_for(@release)
10
- .grid__cell.grid__cell--25
11
- = render_aux_navigation_for(@release)
12
-
13
- .view__container
14
- = render_cards_for(@release, :original)
15
-
16
- .view__container.view__container--narrow
17
- .section
18
- .grid.grid--center
19
- .grid__cell.grid__cell--25
20
- %p.text.text--large= t('workarea.admin.releases.original.created_description_html', undo: link_to(@release.name, @release), original: link_to(@release.undoes.name, @release.undoes), at: local_time_ago(@release.created_at))
21
- .grid__cell.grid__cell--25.align-center
22
- .card{ class: card_classes(:planned_changes) }
23
- = link_to @release.undoes, class: 'card__header' do
24
- %span.card__header-text= @release.undoes.name
25
- = inline_svg 'workarea/admin/icons/planned_changes.svg', class: 'card__icon'
26
-
27
- .card__body
28
- - if @release.undoes.changesets_with_releasable.empty?
29
- %p.card__empty-note= t('workarea.admin.releases.original.no_changes_for_this_release')
30
- - else
31
- - @release.undoes.changesets_with_releasable.take(3).each do |changeset|
32
- .activity
33
- .activity__header
34
- .activity__avatar
35
- = changeset_icon changeset, { class: 'svg-icon'}
36
- .activity__name= changeset.release.name
37
- .activity__time
38
- = changeset.publish_humanized
39
- - if changeset.release_date.present?
40
- = local_time(changeset.release_date, :long)
41
- .activity__message
42
- .release-changeset.release-changeset--activity
43
- .release-changeset__body
44
- - changeset.changed_fields.each do |field|
45
- = render_changeset_field(changeset, field)
46
-
47
- = link_to @release.undoes, class: 'card__button' do
48
- %span.button.button--small= t('workarea.admin.releases.original.view_the_original_release')
49
-
50
-