primer_view_components 0.43.1 → 0.43.3

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.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/app/assets/javascripts/components/primer/beta/details_toggle_element.d.ts +4 -3
  4. data/app/assets/javascripts/primer_view_components.js +1 -1
  5. data/app/assets/javascripts/primer_view_components.js.map +1 -1
  6. data/app/assets/styles/primer_view_components.css +1 -1
  7. data/app/assets/styles/primer_view_components.css.map +1 -1
  8. data/app/components/primer/alpha/action_list.js +0 -2
  9. data/app/components/primer/alpha/action_list.ts +0 -2
  10. data/app/components/primer/alpha/segmented_control.css +1 -1
  11. data/app/components/primer/alpha/segmented_control.css.map +1 -1
  12. data/app/components/primer/alpha/toggle_switch.js +1 -0
  13. data/app/components/primer/alpha/toggle_switch.ts +1 -0
  14. data/app/components/primer/beta/breadcrumbs.css +1 -1
  15. data/app/components/primer/beta/breadcrumbs.css.map +1 -1
  16. data/app/components/primer/beta/breadcrumbs.pcss +1 -0
  17. data/app/components/primer/beta/button.css +1 -1
  18. data/app/components/primer/beta/button.css.map +1 -1
  19. data/app/components/primer/beta/details.rb +22 -12
  20. data/app/components/primer/beta/details_toggle_element.d.ts +4 -3
  21. data/app/components/primer/beta/details_toggle_element.js +12 -7
  22. data/app/components/primer/beta/details_toggle_element.ts +12 -7
  23. data/app/components/primer/beta/nav_list.js +0 -1
  24. data/app/components/primer/beta/nav_list.ts +0 -1
  25. data/app/components/primer/beta/nav_list_group_element.js +1 -0
  26. data/app/components/primer/beta/nav_list_group_element.ts +1 -0
  27. data/app/components/primer/beta/truncate.css +1 -1
  28. data/app/components/primer/beta/truncate.css.map +1 -1
  29. data/app/controllers/primer/view_components/action_menu_controller.rb +52 -0
  30. data/app/controllers/primer/view_components/application_controller.rb +10 -0
  31. data/app/controllers/primer/view_components/auto_check_controller.rb +41 -0
  32. data/app/controllers/primer/view_components/auto_complete_test_controller.rb +55 -0
  33. data/app/controllers/primer/view_components/form_handler_controller.rb +31 -0
  34. data/app/controllers/primer/view_components/include_fragment_controller.rb +17 -0
  35. data/app/controllers/primer/view_components/multi_controller.rb +15 -0
  36. data/app/controllers/primer/view_components/nav_list_items_controller.rb +28 -0
  37. data/app/controllers/primer/view_components/select_panel_items_controller.rb +122 -0
  38. data/app/controllers/primer/view_components/toggle_switch_controller.rb +48 -0
  39. data/app/forms/auto_complete_form.rb +1 -1
  40. data/app/forms/immediate_validation_form.rb +3 -3
  41. data/app/lib/primer/forms/acts_as_component.rb +0 -2
  42. data/app/lib/primer/forms/dsl/text_field_input.rb +1 -1
  43. data/app/views/primer/view_components/action_menu/deferred.html.erb +22 -0
  44. data/app/views/primer/view_components/action_menu/deferred_preload.html.erb +5 -0
  45. data/app/views/primer/view_components/action_menu/form_action.html.erb +2 -0
  46. data/app/views/primer/view_components/action_menu/landing.html.erb +3 -0
  47. data/app/views/primer/view_components/auto_check/_error_message.html.erb +1 -0
  48. data/app/views/primer/view_components/auto_check/_success_message.html.erb +1 -0
  49. data/app/views/primer/view_components/auto_check/_warning_message.html.erb +4 -0
  50. data/app/views/primer/view_components/auto_complete_test/index.html.erb +15 -0
  51. data/app/views/primer/view_components/auto_complete_test/no_results.html.erb +16 -0
  52. data/app/views/primer/view_components/form_handler/form_action.html.erb +1 -0
  53. data/app/views/primer/view_components/include_fragment/deferred.html.erb +3 -0
  54. data/app/views/primer/view_components/nav_list_items/index.html.erb +3 -0
  55. data/app/views/primer/view_components/select_panel_items/index.html.erb +15 -0
  56. data/config/routes.rb +27 -0
  57. data/lib/primer/accessibility.rb +3 -0
  58. data/lib/primer/view_components/engine.rb +4 -0
  59. data/lib/primer/view_components/linters/autocorrectable.rb +1 -1
  60. data/lib/primer/view_components/linters/migrations/iconbutton_component.rb +4 -7
  61. data/lib/primer/view_components/linters/migrations/truncate_component.rb +4 -7
  62. data/lib/primer/view_components/version.rb +1 -1
  63. data/lib/rubocop/cop/primer/base_cop.rb +1 -1
  64. data/lib/rubocop/cop/primer/component_name_migration.rb +7 -8
  65. data/lib/rubocop/cop/primer/deprecated_arguments.rb +7 -8
  66. data/lib/rubocop/cop/primer/deprecated_button_arguments.rb +5 -6
  67. data/lib/rubocop/cop/primer/deprecated_label_schemes.rb +6 -7
  68. data/lib/rubocop/cop/primer/deprecated_label_variants.rb +7 -14
  69. data/lib/rubocop/cop/primer/no_tag_memoize.rb +1 -1
  70. data/lib/rubocop/cop/primer/primer_octicon.rb +5 -6
  71. data/previews/primer/alpha/action_menu_preview/multiple_select_form.html.erb +1 -1
  72. data/previews/primer/alpha/action_menu_preview/single_select_form.html.erb +1 -1
  73. data/previews/primer/alpha/action_menu_preview/single_select_form_items.html.erb +2 -2
  74. data/previews/primer/alpha/action_menu_preview/with_actions.html.erb +2 -2
  75. data/previews/primer/alpha/action_menu_preview.rb +2 -2
  76. data/previews/primer/alpha/auto_complete_preview.rb +6 -6
  77. data/previews/primer/alpha/dialog_preview.rb +1 -1
  78. data/previews/primer/alpha/include_fragment_preview.rb +2 -2
  79. data/previews/primer/alpha/select_panel_preview/custom_loading_description.html.erb +1 -1
  80. data/previews/primer/alpha/select_panel_preview/custom_loading_label.html.erb +1 -1
  81. data/previews/primer/alpha/select_panel_preview/eventually_local_fetch.html.erb +1 -1
  82. data/previews/primer/alpha/select_panel_preview/eventually_local_fetch_initial_failure.html.erb +1 -1
  83. data/previews/primer/alpha/select_panel_preview/eventually_local_fetch_no_results.html.erb +1 -1
  84. data/previews/primer/alpha/select_panel_preview/multiselect_form.html.erb +1 -1
  85. data/previews/primer/alpha/select_panel_preview/playground.html.erb +1 -1
  86. data/previews/primer/alpha/select_panel_preview/remote_fetch.html.erb +1 -1
  87. data/previews/primer/alpha/select_panel_preview/remote_fetch_filter_failure.html.erb +1 -1
  88. data/previews/primer/alpha/select_panel_preview/remote_fetch_form.html.erb +2 -2
  89. data/previews/primer/alpha/select_panel_preview/remote_fetch_initial_failure.html.erb +1 -1
  90. data/previews/primer/alpha/select_panel_preview/remote_fetch_no_results.html.erb +1 -1
  91. data/previews/primer/alpha/select_panel_preview/single_select_form.html.erb +1 -1
  92. data/previews/primer/alpha/text_field_preview/input_group_leading_action_menu.html.erb +1 -1
  93. data/previews/primer/alpha/text_field_preview.rb +3 -3
  94. data/previews/primer/alpha/toggle_switch_preview.rb +11 -11
  95. data/previews/primer/beta/auto_complete_preview/with_submit_button.html.erb +1 -1
  96. data/previews/primer/beta/auto_complete_preview.rb +18 -18
  97. data/previews/primer/beta/breadcrumbs_preview/with_long_items.html.erb +13 -0
  98. data/previews/primer/beta/breadcrumbs_preview.rb +6 -0
  99. data/previews/primer/beta/details_preview.rb +16 -0
  100. data/previews/primer/beta/nav_list_preview.rb +2 -2
  101. data/previews/primer/forms_preview/action_menu_form.html.erb +1 -1
  102. data/previews/primer/forms_preview/auto_complete_form.html.erb +1 -1
  103. data/previews/primer/forms_preview/example_toggle_switch_form.html.erb +2 -2
  104. data/previews/primer/forms_preview/multi_input_form.html.erb +1 -1
  105. data/previews/primer/forms_preview/select_form.html.erb +1 -1
  106. data/previews/primer/url_helpers.rb +1 -0
  107. data/static/arguments.json +67 -37
  108. data/static/audited_at.json +1 -0
  109. data/static/constants.json +13 -2
  110. data/static/info_arch.json +638 -1407
  111. data/static/previews.json +112 -0
  112. data/static/statuses.json +1 -0
  113. metadata +27 -2
@@ -14,6 +14,7 @@ module RuboCop
14
14
  # good
15
15
  # Primer::Beta::Label.new(scheme: :accent)
16
16
  class DeprecatedLabelSchemes < BaseCop
17
+ extend AutoCorrector
17
18
  INVALID_MESSAGE = <<~STR
18
19
  Avoid using deprecated schemes: https://primer.style/view-components/deprecated#labelcomponent.
19
20
  STR
@@ -44,16 +45,14 @@ module RuboCop
44
45
 
45
46
  next unless DEPRECATIONS.key?(value)
46
47
 
47
- add_offense(pair.value, message: INVALID_MESSAGE)
48
+ add_offense(pair.value, message: INVALID_MESSAGE) do |corrector|
49
+ replacement = DEPRECATIONS[pair.value.value.to_sym]
50
+ corrector.replace(pair.value, replacement)
51
+ end
48
52
  end
49
53
  end
50
54
 
51
- def autocorrect(node)
52
- lambda do |corrector|
53
- replacement = DEPRECATIONS[node.value.to_sym]
54
- corrector.replace(node, replacement)
55
- end
56
- end
55
+
57
56
 
58
57
  private
59
58
 
@@ -20,6 +20,7 @@ module RuboCop
20
20
  # good
21
21
  # Primer::Beta::Label.new(inline: true)
22
22
  class DeprecatedLabelVariants < BaseCop
23
+ extend AutoCorrector
23
24
  def on_send(node)
24
25
  return unless label_node?(node)
25
26
  return unless node.arguments?
@@ -37,26 +38,18 @@ module RuboCop
37
38
 
38
39
  case pair.value.value
39
40
  when :large, "large"
40
- add_offense(pair, message: "Avoid using `variant: :large` with `LabelComponent`. Use `size: :large` instead.")
41
+ add_offense(pair, message: "Avoid using `variant: :large` with `LabelComponent`. Use `size: :large` instead.") do |corrector|
42
+ corrector.replace(pair, "size: :large")
43
+ end
41
44
  when :inline, "inline"
42
- add_offense(pair, message: "Avoid using `variant: :inline` with `LabelComponent`. Use `inline: true` instead.")
45
+ add_offense(pair, message: "Avoid using `variant: :inline` with `LabelComponent`. Use `inline: true` instead.") do |corrector|
46
+ corrector.replace(pair, "inline: true")
47
+ end
43
48
  end
44
49
  end
45
50
  end
46
51
 
47
- def autocorrect(node)
48
- lambda do |corrector|
49
- replacement =
50
- case node.value.value
51
- when :large, "large"
52
- "size: :large"
53
- when :inline, "inline"
54
- "inline: true"
55
- end
56
52
 
57
- corrector.replace(node, replacement)
58
- end
59
- end
60
53
 
61
54
  private
62
55
 
@@ -16,7 +16,7 @@ module RuboCop
16
16
  #
17
17
  # good
18
18
  # @system_arguments[:tag] = :h2
19
- class NoTagMemoize < RuboCop::Cop::Cop
19
+ class NoTagMemoize < RuboCop::Cop::Base
20
20
  INVALID_MESSAGE = <<~STR
21
21
  Avoid `[:tag] ||=`. Instead, try one of the following:
22
22
  - Don't allow consumers to update the tag by having a fixed tag (e.g. `system_arguments[:tag] = :div`)
@@ -22,7 +22,8 @@ module RuboCop
22
22
  # primer_octicon(:"icon-with-daashes")
23
23
  # primer_octicon(@ivar)
24
24
  # primer_octicon(condition > "icon" : "other-icon")
25
- class PrimerOcticon < RuboCop::Cop::Cop
25
+ class PrimerOcticon < RuboCop::Cop::Base
26
+ extend AutoCorrector
26
27
  INVALID_MESSAGE = <<~STR
27
28
  Replace the octicon helper with primer_octicon. See https://primer.style/view-components/components/octicon for details.
28
29
  STR
@@ -65,11 +66,7 @@ module RuboCop
65
66
  return if invalid_classes.present?
66
67
  end
67
68
 
68
- add_offense(node, message: INVALID_MESSAGE)
69
- end
70
-
71
- def autocorrect(node)
72
- lambda do |corrector|
69
+ add_offense(node, message: INVALID_MESSAGE) do |corrector|
73
70
  kwargs = kwargs(node)
74
71
 
75
72
  # Converting arguments for the component
@@ -86,6 +83,8 @@ module RuboCop
86
83
  end
87
84
  end
88
85
 
86
+
87
+
89
88
  private
90
89
 
91
90
  def transform_sizes(kwargs)
@@ -1,4 +1,4 @@
1
- <%= form_with(url: action_menu_form_action_path(format: route_format)) do |f| %>
1
+ <%= form_with(url: primer_view_components.action_menu_form_action_path(format: route_format)) do |f| %>
2
2
  <%= render(Primer::Alpha::ActionMenu.new(select_variant: :multiple, dynamic_label: true, dynamic_label_prefix: "Strategy", form_arguments: { builder: f, name: "foo" })) do |menu| %>
3
3
  <% menu.with_show_button { "Strategy" } %>
4
4
  <% menu.with_item(label: "Fast forward", data: { value: "fast_forward" }) %>
@@ -1,4 +1,4 @@
1
- <%= form_with(url: action_menu_form_action_path(format: route_format)) do |f| %>
1
+ <%= form_with(url: primer_view_components.action_menu_form_action_path(format: route_format)) do |f| %>
2
2
  <%= render(Primer::Alpha::ActionMenu.new(select_variant: :single, dynamic_label: true, dynamic_label_prefix: "Strategy", form_arguments: { builder: f, name: "foo" })) do |menu| %>
3
3
  <% menu.with_show_button { "Strategy" } %>
4
4
  <% menu.with_item(label: "Fast forward", data: { value: "fast_forward" }) %>
@@ -2,7 +2,7 @@
2
2
  <% menu.with_show_button { "Group By" } %>
3
3
  <% menu.with_item(
4
4
  label: "Repository",
5
- href: action_menu_form_action_path(format: route_format),
5
+ href: primer_view_components.action_menu_form_action_path(format: route_format),
6
6
  form_arguments: {
7
7
  method: :post,
8
8
  inputs: [{
@@ -16,7 +16,7 @@
16
16
  ) %>
17
17
  <% menu.with_item(
18
18
  label: "Date",
19
- href: action_menu_form_action_path(format: route_format),
19
+ href: primer_view_components.action_menu_form_action_path(format: route_format),
20
20
  form_arguments: {
21
21
  method: :post,
22
22
  inputs: [{
@@ -9,11 +9,11 @@
9
9
  <%= render(Primer::Alpha::ActionMenu.new) do |component| %>
10
10
  <% component.with_show_button { "Trigger" } %>
11
11
  <% component.with_item(label: "Alert", tag: :button, id: "alert-item", disabled: disable_items) %>
12
- <% component.with_item(label: "Navigate", tag: :a, content_arguments: { href: action_menu_landing_path }, disabled: disable_items) %>
12
+ <% component.with_item(label: "Navigate", tag: :a, content_arguments: { href: primer_view_components.action_menu_landing_path }, disabled: disable_items) %>
13
13
  <% component.with_item(label: "Copy text", tag: :"clipboard-copy", content_arguments: { value: "Text to copy" }, disabled: disable_items) %>
14
14
  <% component.with_item(
15
15
  label: "Submit form",
16
- href: action_menu_form_action_path(format: route_format),
16
+ href: primer_view_components.action_menu_form_action_path(format: route_format),
17
17
  form_arguments: {
18
18
  name: "foo", value: "bar", method: :post
19
19
  },
@@ -267,7 +267,7 @@ module Primer
267
267
  # @label With deferred content
268
268
  #
269
269
  def with_deferred_content
270
- render(Primer::Alpha::ActionMenu.new(menu_id: "deferred", src: UrlHelpers.action_menu_deferred_path)) do |menu|
270
+ render(Primer::Alpha::ActionMenu.new(menu_id: "deferred", src: UrlHelpers.primer_view_components.action_menu_deferred_path)) do |menu|
271
271
  menu.with_show_button { "Menu with deferred content" }
272
272
  end
273
273
  end
@@ -275,7 +275,7 @@ module Primer
275
275
  # @label With deferred preloaded content
276
276
  #
277
277
  def with_deferred_preloaded_content
278
- render(Primer::Alpha::ActionMenu.new(menu_id: "deferred-preload", preload: true, src: UrlHelpers.action_menu_deferred_preload_path)) do |menu|
278
+ render(Primer::Alpha::ActionMenu.new(menu_id: "deferred-preload", preload: true, src: UrlHelpers.primer_view_components.action_menu_deferred_preload_path)) do |menu|
279
279
  menu.with_show_button { "Menu with deferred and preloaded content" }
280
280
  end
281
281
  end
@@ -19,7 +19,7 @@ module Primer
19
19
  label_text: label_text,
20
20
  input_id: "input-id",
21
21
  list_id: "test-id",
22
- src: UrlHelpers.autocomplete_index_path(version: "alpha"),
22
+ src: UrlHelpers.primer_view_components.autocomplete_index_path(version: "alpha"),
23
23
  is_label_visible: is_label_visible,
24
24
  is_label_inline: is_label_inline,
25
25
  with_icon: with_icon,
@@ -43,7 +43,7 @@ module Primer
43
43
  label_text: label_text,
44
44
  input_id: "input-id",
45
45
  list_id: "test-id",
46
- src: UrlHelpers.autocomplete_index_path(version: "alpha"),
46
+ src: UrlHelpers.primer_view_components.autocomplete_index_path(version: "alpha"),
47
47
  is_label_visible: is_label_visible,
48
48
  is_label_inline: is_label_inline,
49
49
  with_icon: with_icon,
@@ -63,7 +63,7 @@ module Primer
63
63
  label_text: "Select a fruit",
64
64
  input_id: "input-id-1",
65
65
  list_id: "test-id-1",
66
- src: UrlHelpers.autocomplete_index_path(version: "alpha"),
66
+ src: UrlHelpers.primer_view_components.autocomplete_index_path(version: "alpha"),
67
67
  is_label_visible: false
68
68
  )
69
69
  )
@@ -78,7 +78,7 @@ module Primer
78
78
  label_text: "Select a fruit",
79
79
  input_id: "input-id-2",
80
80
  list_id: "test-id-2",
81
- src: UrlHelpers.autocomplete_index_path(version: "alpha"),
81
+ src: UrlHelpers.primer_view_components.autocomplete_index_path(version: "alpha"),
82
82
  is_label_inline: true
83
83
  )
84
84
  )
@@ -93,7 +93,7 @@ module Primer
93
93
  label_text: "Select a fruit",
94
94
  input_id: "input-id-3",
95
95
  list_id: "test-id-3",
96
- src: UrlHelpers.autocomplete_index_path(version: "alpha"),
96
+ src: UrlHelpers.primer_view_components.autocomplete_index_path(version: "alpha"),
97
97
  with_icon: true
98
98
  )
99
99
  )
@@ -108,7 +108,7 @@ module Primer
108
108
  label_text: "Select a fruit",
109
109
  input_id: "input-id-4",
110
110
  list_id: "test-id-4",
111
- src: UrlHelpers.autocomplete_index_path(version: "alpha"),
111
+ src: UrlHelpers.primer_view_components.autocomplete_index_path(version: "alpha"),
112
112
  is_clearable: true
113
113
  )
114
114
  )
@@ -167,7 +167,7 @@ module Primer
167
167
  subtitle: subtitle,
168
168
  button_text: button_text,
169
169
  show_divider: show_divider,
170
- url: UrlHelpers.autocomplete_index_path
170
+ url: UrlHelpers.primer_view_components.autocomplete_index_path
171
171
  })
172
172
  end
173
173
 
@@ -10,12 +10,12 @@ module Primer
10
10
  # @label Playground
11
11
  # @param loading select [eager, lazy]
12
12
  def playground(loading: :eager)
13
- render(Primer::Alpha::IncludeFragment.new(loading: loading, src: UrlHelpers.include_fragment_deferred_path)) { "Loading..." }
13
+ render(Primer::Alpha::IncludeFragment.new(loading: loading, src: UrlHelpers.primer_view_components.include_fragment_deferred_path)) { "Loading..." }
14
14
  end
15
15
 
16
16
  # @label Default options
17
17
  def default
18
- render(Primer::Alpha::IncludeFragment.new(loading: :eager, src: UrlHelpers.include_fragment_deferred_path)) { "Loading..." }
18
+ render(Primer::Alpha::IncludeFragment.new(loading: :eager, src: UrlHelpers.primer_view_components.include_fragment_deferred_path)) { "Loading..." }
19
19
  end
20
20
  end
21
21
  end
@@ -4,7 +4,7 @@
4
4
  <%= render(Primer::Alpha::SelectPanel.new(
5
5
  id: "select-panel",
6
6
  data: { interaction_subject: subject_id },
7
- src: select_panel_items_path(
7
+ src: primer_view_components.select_panel_items_path(
8
8
  select_variant: :multiple,
9
9
  selected_items: selected_items,
10
10
  ),
@@ -3,7 +3,7 @@
3
3
  <%# We set src and fetch_strategy: :local here to make the loading spinner remain visible %>
4
4
  <%= render(Primer::Alpha::SelectPanel.new(
5
5
  data: { interaction_subject: subject_id },
6
- src: select_panel_items_path(
6
+ src: primer_view_components.select_panel_items_path(
7
7
  select_variant: :multiple,
8
8
  selected_items: selected_items,
9
9
  ),
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= render(Primer::Alpha::SelectPanel.new(
4
4
  data: { interaction_subject: subject_id },
5
- src: select_panel_items_path,
5
+ src: primer_view_components.select_panel_items_path,
6
6
  select_variant: :multiple,
7
7
  fetch_strategy: :eventually_local,
8
8
  open_on_load: open_on_load,
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= render(Primer::Alpha::SelectPanel.new(
4
4
  data: { interaction_subject: subject_id },
5
- src: select_panel_items_path(fail: "true"),
5
+ src: primer_view_components.select_panel_items_path(fail: "true"),
6
6
  fetch_strategy: :eventually_local,
7
7
  open_on_load: open_on_load
8
8
  )) do |panel| %>
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= render(Primer::Alpha::SelectPanel.new(
4
4
  data: { interaction_subject: subject_id },
5
- src: select_panel_items_path(show_results: "false"),
5
+ src: primer_view_components.select_panel_items_path(show_results: "false"),
6
6
  select_variant: :multiple,
7
7
  fetch_strategy: :eventually_local,
8
8
  open_on_load: open_on_load
@@ -1,6 +1,6 @@
1
1
  <% subject_id = SecureRandom.hex %>
2
2
 
3
- <%= form_with(url: generic_form_submission_path(format: route_format)) do |builder| %>
3
+ <%= form_with(url: primer_view_components.generic_form_submission_path(format: route_format)) do |builder| %>
4
4
  <%= render(Primer::Alpha::SelectPanel.new(
5
5
  data: { interaction_subject: subject_id },
6
6
  select_variant: :multiple,
@@ -5,7 +5,7 @@
5
5
 
6
6
  <%= render(Primer::Alpha::SelectPanel.new(
7
7
  data: { interaction_subject: subject_id },
8
- src: select_panel_items_path(
8
+ src: primer_view_components.select_panel_items_path(
9
9
  select_variant: :single,
10
10
  show_results: !simulate_no_results,
11
11
  fail: simulate_failure,
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= render(Primer::Alpha::SelectPanel.new(
4
4
  data: { interaction_subject: subject_id },
5
- src: select_panel_items_path(
5
+ src: primer_view_components.select_panel_items_path(
6
6
  select_variant: :multiple,
7
7
  selected_items: selected_items,
8
8
  ),
@@ -4,7 +4,7 @@
4
4
  data: { interaction_subject: subject_id },
5
5
  # passing a uuid here causes the request to succeed the first time and fail all subsequent times
6
6
  # set show_results to false to simulate an initial load with no items
7
- src: select_panel_items_path(show_results: show_results.to_s, fail: "true", uuid: SecureRandom.uuid),
7
+ src: primer_view_components.select_panel_items_path(show_results: show_results.to_s, fail: "true", uuid: SecureRandom.uuid),
8
8
  fetch_strategy: :remote,
9
9
  open_on_load: open_on_load,
10
10
  **system_arguments
@@ -1,10 +1,10 @@
1
1
  <% subject_id = SecureRandom.hex %>
2
2
 
3
- <%= form_with(url: generic_form_submission_path(format: route_format)) do |builder| %>
3
+ <%= form_with(url: primer_view_components.generic_form_submission_path(format: route_format)) do |builder| %>
4
4
  <%= render(Primer::Alpha::SelectPanel.new(
5
5
  data: { interaction_subject: subject_id },
6
6
  select_variant: :single,
7
- src: select_panel_items_path(
7
+ src: primer_view_components.select_panel_items_path(
8
8
  select_variant: :single,
9
9
  selected_items: selected_items,
10
10
  ),
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= render(Primer::Alpha::SelectPanel.new(
4
4
  data: { interaction_subject: subject_id },
5
- src: select_panel_items_path(fail: "true"),
5
+ src: primer_view_components.select_panel_items_path(fail: "true"),
6
6
  fetch_strategy: :remote,
7
7
  open_on_load: open_on_load
8
8
  )) do |panel| %>
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= render(Primer::Alpha::SelectPanel.new(
4
4
  data: { interaction_subject: subject_id },
5
- src: select_panel_items_path(show_results: "false"),
5
+ src: primer_view_components.select_panel_items_path(show_results: "false"),
6
6
  select_variant: :multiple,
7
7
  fetch_strategy: :remote,
8
8
  open_on_load: open_on_load
@@ -1,6 +1,6 @@
1
1
  <% subject_id = SecureRandom.hex %>
2
2
 
3
- <%= form_with(url: generic_form_submission_path(format: route_format)) do |builder| %>
3
+ <%= form_with(url: primer_view_components.generic_form_submission_path(format: route_format)) do |builder| %>
4
4
  <%= render(Primer::Alpha::SelectPanel.new(
5
5
  data: { interaction_subject: subject_id },
6
6
  select_variant: :single,
@@ -1,5 +1,5 @@
1
1
  <%= render(Primer::BaseComponent.new(tag: :div, flex_items: :center, display: :flex)) do %>
2
- <%= form_with(url: action_menu_form_action_path(format: route_format)) do |f| %>
2
+ <%= form_with(url: primer_view_components.action_menu_form_action_path(format: route_format)) do |f| %>
3
3
  <%= render(Primer::Alpha::ActionMenu.new(select_variant: :single, form_arguments: { builder: f, name: "foo" })) do |menu| %>
4
4
  <% menu.with_show_button(classes: "rounded-right-0 border-right-0") { |button| button.with_trailing_action_icon(icon: :"triangle-down"); "Filter" } %>
5
5
  <% menu.with_item(label: "Fast forward", data: { value: "fast_forward" }) %>
@@ -220,17 +220,17 @@ module Primer
220
220
  #
221
221
  # @label Auto check request ok
222
222
  def with_auto_check_ok
223
- render(Primer::Alpha::TextField.new(auto_check_src: UrlHelpers.example_check_ok_path, name: "my-text-field-18", label: "My text field"))
223
+ render(Primer::Alpha::TextField.new(auto_check_src: UrlHelpers.primer_view_components.example_check_ok_path, name: "my-text-field-18", label: "My text field"))
224
224
  end
225
225
 
226
226
  # @label Auto check request accepted
227
227
  def with_auto_check_accepted
228
- render(Primer::Alpha::TextField.new(auto_check_src: UrlHelpers.example_check_accepted_path, name: "my-text-field-19", label: "My text field"))
228
+ render(Primer::Alpha::TextField.new(auto_check_src: UrlHelpers.primer_view_components.example_check_accepted_path, name: "my-text-field-19", label: "My text field"))
229
229
  end
230
230
 
231
231
  # @label Auto check request error
232
232
  def with_auto_check_error
233
- render(Primer::Alpha::TextField.new(auto_check_src: UrlHelpers.example_check_error_path, name: "my-text-field-20", label: "My text field"))
233
+ render(Primer::Alpha::TextField.new(auto_check_src: UrlHelpers.primer_view_components.example_check_error_path, name: "my-text-field-20", label: "My text field"))
234
234
  end
235
235
  #
236
236
  # @!endgroup
@@ -9,37 +9,37 @@ module Primer
9
9
  include ActionView::Helpers::FormTagHelper
10
10
 
11
11
  def playground
12
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path))
12
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path))
13
13
  end
14
14
 
15
15
  # @snapshot
16
16
  def default
17
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path))
17
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path))
18
18
  end
19
19
 
20
20
  # @snapshot
21
21
  def checked
22
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, checked: true))
22
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, checked: true))
23
23
  end
24
24
 
25
25
  # @snapshot
26
26
  def disabled
27
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, enabled: false))
27
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, enabled: false))
28
28
  end
29
29
 
30
30
  # @snapshot
31
31
  def checked_disabled
32
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, checked: true, enabled: false))
32
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, checked: true, enabled: false))
33
33
  end
34
34
 
35
35
  # @snapshot
36
36
  def small
37
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, size: :small))
37
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, size: :small))
38
38
  end
39
39
 
40
40
  # @snapshot
41
41
  def with_status_label_position_end
42
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, status_label_position: :end))
42
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, status_label_position: :end))
43
43
  end
44
44
 
45
45
  # @snapshot
@@ -52,19 +52,19 @@ module Primer
52
52
  end
53
53
 
54
54
  def with_csrf_token
55
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path))
55
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path))
56
56
  end
57
57
 
58
58
  def with_bad_csrf_token
59
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, csrf_token: "i_am_a_criminal"))
59
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, csrf_token: "i_am_a_criminal"))
60
60
  end
61
61
 
62
62
  def with_turbo
63
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, turbo: true))
63
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, turbo: true))
64
64
  end
65
65
 
66
66
  def with_autofocus
67
- render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.toggle_switch_index_path, autofocus: true))
67
+ render(Primer::Alpha::ToggleSwitch.new(src: UrlHelpers.primer_view_components.toggle_switch_index_path, autofocus: true))
68
68
  end
69
69
  end
70
70
  end
@@ -4,7 +4,7 @@
4
4
  label_text: label_text,
5
5
  input_id: input_id,
6
6
  list_id: list_id,
7
- src: autocomplete_index_path,
7
+ src: primer_view_components.autocomplete_index_path,
8
8
  show_clear_button: show_clear_button,
9
9
  visually_hide_label: visually_hide_label,
10
10
  placeholder: placeholder,