primer_view_components 0.0.81 → 0.0.84

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 (30) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -0
  3. data/README.md +1 -1
  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/components/primer/alpha/auto_complete/auto_complete.html.erb +24 -0
  7. data/app/components/primer/alpha/auto_complete/item.rb +46 -0
  8. data/app/components/primer/alpha/auto_complete.rb +158 -0
  9. data/app/components/primer/alpha/tool-tip-element.js +1 -0
  10. data/app/components/primer/alpha/tool-tip-element.ts +1 -0
  11. data/app/components/primer/beta/auto_complete/auto_complete.html.erb +21 -17
  12. data/app/components/primer/beta/auto_complete/item.html.erb +21 -0
  13. data/app/components/primer/beta/auto_complete/item.rb +42 -6
  14. data/app/components/primer/beta/auto_complete.rb +93 -55
  15. data/app/components/primer/component.rb +1 -1
  16. data/app/components/primer/conditional_wrapper.rb +36 -0
  17. data/app/components/primer/layout_component.html.erb +1 -0
  18. data/lib/primer/view_components/linters/deprecated_components_counter.rb +49 -0
  19. data/lib/primer/view_components/linters/helpers/deprecated_components_helpers.rb +46 -0
  20. data/lib/primer/view_components/version.rb +1 -1
  21. data/lib/rubocop/config/default.yml +2 -26
  22. data/lib/rubocop/cop/primer/deprecated_arguments.rb +10 -0
  23. data/lib/rubocop/cop/primer/deprecated_components.rb +2 -33
  24. data/lib/tasks/docs.rake +3 -3
  25. data/static/arguments.yml +40 -13
  26. data/static/audited_at.json +3 -0
  27. data/static/classes.yml +23 -7
  28. data/static/constants.json +23 -1
  29. data/static/statuses.json +3 -0
  30. metadata +43 -8
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Primer
4
+ # Conditionally renders a `Primer::BaseComponent` around the given content. If the given condition
5
+ # is true, a `Primer::BaseComponent` will render around the content. If the condition is false, only
6
+ # the content is rendered.
7
+ #
8
+ # @example True conditional
9
+ # <%# condition is true, so content will be wrapped in a <span> tag
10
+ # <%= render Primer::ConditionalWrapper.new(condition: true, tag: :span, class: "foobar")) do %>
11
+ # <%# also rendered %>
12
+ # <p class="bazboo">Some text</p>
13
+ # <% end %>
14
+ #
15
+ # @example False conditional
16
+ # <%# condition is false so no <span> tag will render around the content (i.e. the <p> tag)
17
+ # <%= render(Primer::ConditionalWrapper.new(condition: false, tag: :span, class: "foobar")) do %>
18
+ # <%# this content will be rendered %>
19
+ # <p class="bazboo">Some text</p>
20
+ # <% end %>
21
+ #
22
+ # @param condition [Boolean] Whether or not to wrap the content in a `Primer::BaseComponent`.
23
+ # @param base_component_arguments [Hash] The arguments to pass to `Primer::BaseComponent`.
24
+ class ConditionalWrapper < Primer::Component
25
+ def initialize(condition:, **base_component_arguments)
26
+ @condition = condition
27
+ @base_component_arguments = base_component_arguments
28
+ end
29
+
30
+ def call
31
+ return content unless @condition
32
+
33
+ BaseComponent.new(**@base_component_arguments).render_in(self) { content }
34
+ end
35
+ end
36
+ end
@@ -1,3 +1,4 @@
1
+ <%# erblint:counter DeprecatedComponentsCounter 1 %>
1
2
  <%= render(Primer::FlexComponent.new(**@system_arguments)) do %>
2
3
  <% if @side == :left %>
3
4
  <%= sidebar %>
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "helpers/deprecated_components_helpers"
4
+ require "erblint-github/linters/custom_helpers"
5
+
6
+ module ERBLint
7
+ module Linters
8
+ # Lints against deprecated components
9
+ class DeprecatedComponentsCounter < Linter
10
+ include CustomHelpers
11
+ include ERBLint::LinterRegistry
12
+ include Helpers::DeprecatedComponentsHelpers
13
+
14
+ def run(processed_source)
15
+ processed_source.ast.descendants(:erb).each do |erb_node|
16
+ _, _, code_node = *erb_node
17
+ code = code_node.children.first.strip
18
+
19
+ next unless code.include?("Primer::")
20
+
21
+ deprecated_components.each do |component|
22
+ next unless code.include?(component)
23
+
24
+ add_offense(
25
+ erb_node.loc,
26
+ message(component)
27
+ )
28
+ end
29
+ end
30
+
31
+ counter_correct?(processed_source)
32
+ end
33
+
34
+ def autocorrect(processed_source, offense)
35
+ return unless offense.context
36
+
37
+ lambda do |corrector|
38
+ if processed_source.file_content.include?("erblint:counter #{self.class.name.gsub('ERBLint::Linters::', '')}")
39
+ # update the counter if exists
40
+ corrector.replace(offense.source_range, offense.context)
41
+ else
42
+ # add comment with counter if none
43
+ corrector.insert_before(processed_source.source_buffer.source_range, "#{offense.context}\n")
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ERBLint
4
+ module Linters
5
+ module Helpers
6
+ # Helpers to share between DeprecatedComponents ERB lint and Rubocop cop
7
+ module DeprecatedComponentsHelpers
8
+ # If there is no alternative to suggest, set the value to nil
9
+ COMPONENT_TO_USE_INSTEAD = {
10
+ "Primer::Alpha::AutoComplete::Item" => "Primer::Beta::AutoComplete::Item",
11
+ "Primer::Alpha::AutoComplete" => "Primer::Beta::AutoComplete",
12
+ "Primer::BlankslateComponent" => "Primer::Beta::Blankslate",
13
+ "Primer::DropdownMenuComponent" => nil,
14
+ "Primer::Tooltip" => "Primer::Alpha::Tooltip",
15
+ "Primer::FlexComponent" => nil,
16
+ "Primer::FlexItemComponent" => nil
17
+ }.freeze
18
+
19
+ def message(component)
20
+ message = "#{component} has been deprecated and should not be used."
21
+ message += " Try #{COMPONENT_TO_USE_INSTEAD[component]} instead." if COMPONENT_TO_USE_INSTEAD.fetch(component).present?
22
+ message
23
+ end
24
+
25
+ def statuses_json
26
+ JSON.parse(
27
+ File.read(
28
+ File.join(File.dirname(__FILE__), "../../../../../static/statuses.json")
29
+ )
30
+ ).freeze
31
+ end
32
+
33
+ def deprecated_components
34
+ @deprecated_components ||= statuses_json.select { |_, value| value == "deprecated" }.keys.tap do |deprecated_components|
35
+ deprecated_components.each do |deprecated|
36
+ unless COMPONENT_TO_USE_INSTEAD.key?(deprecated)
37
+ raise "Please provide a component that should be used in place of #{deprecated} in COMPONENT_TO_USE_INSTEAD. "\
38
+ "If there is no alternative, set the value to nil."
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -5,7 +5,7 @@ module Primer
5
5
  module VERSION
6
6
  MAJOR = 0
7
7
  MINOR = 0
8
- PATCH = 81
8
+ PATCH = 84
9
9
 
10
10
  STRING = [MAJOR, MINOR, PATCH].join(".")
11
11
  end
@@ -1,33 +1,9 @@
1
1
  require:
2
2
  - rubocop/cop/primer
3
- - rubocop-rails
4
3
 
5
- ####### RUBOCOP'S DEFAULTS #######
6
- # we don't want these in .erb files
7
- Style/FrozenStringLiteralComment:
8
- Enabled: false
9
-
10
- # lots of false-positives in .erb files
11
- Layout/InitialIndentation:
12
- Enabled: false
13
-
14
- Style/StringLiterals:
15
- EnforcedStyle: double_quotes
16
-
17
- # lots of false-positives - this cop is meant for Ruby code, not .erb
18
- Layout/TrailingEmptyLines:
19
- Enabled: false
20
-
21
- # it's often not desirable to add unnecessary newlines into .erb files, as
22
- # they will appear in the rendered HTML
23
- Layout/LineLength:
24
- Enabled: false
25
-
26
- # calling .html_safe in templates is ok
27
- Rails/OutputSafety:
28
- Enabled: false
4
+ AllCops:
5
+ DisabledByDefault: true
29
6
 
30
- ####### PRIMER COPS #######
31
7
  Primer/SystemArgumentInsteadOfClass:
32
8
  Enabled: true
33
9
 
@@ -33,6 +33,16 @@ module RuboCop
33
33
  # }
34
34
  #
35
35
  DEPRECATED = {
36
+ is_label_inline: nil,
37
+ with_icon: nil,
38
+ is_label_visible: {
39
+ false => "visually_hide_label: true",
40
+ true => "visually_hide_label: false"
41
+ },
42
+ is_clearable: {
43
+ false => "show_clear_button: false",
44
+ true => "show_clear_button: true"
45
+ },
36
46
  bg: {
37
47
  white: "bg: :primary",
38
48
  gray_light: "bg: :secondary",
@@ -3,6 +3,7 @@
3
3
  require "rubocop"
4
4
  require "json"
5
5
  require "parser/current"
6
+ require_relative "./../../../primer/view_components/linters/helpers/deprecated_components_helpers"
6
7
 
7
8
  module RuboCop
8
9
  module Cop
@@ -21,14 +22,7 @@ module RuboCop
21
22
  # good
22
23
  # Primer::Alpha::Tooltip.new(:foo)
23
24
  class DeprecatedComponents < BaseCop
24
- # If there is no alternative to suggest, set the value to nil.
25
- COMPONENT_TO_USE_INSTEAD = {
26
- "Primer::BlankslateComponent" => "Primer::Beta::Blankslate",
27
- "Primer::DropdownMenuComponent" => nil,
28
- "Primer::Tooltip" => "Primer::Alpha::Tooltip",
29
- "Primer::FlexComponent" => nil,
30
- "Primer::FlexItemComponent" => nil
31
- }.freeze
25
+ include ERBLint::Linters::Helpers::DeprecatedComponentsHelpers
32
26
 
33
27
  def on_send(node)
34
28
  return unless node.source.include?("Primer::")
@@ -49,31 +43,6 @@ module RuboCop
49
43
  .delete("\n")
50
44
  .gsub(" ", " ")
51
45
  end
52
-
53
- def message(component)
54
- message = "#{component} has been deprecated and should not be used."
55
- message += " Try #{COMPONENT_TO_USE_INSTEAD[component]} instead." if COMPONENT_TO_USE_INSTEAD.fetch(component).present?
56
- message
57
- end
58
-
59
- def statuses_json
60
- JSON.parse(
61
- File.read(
62
- File.join(File.dirname(__FILE__), "../../../../static/statuses.json")
63
- )
64
- ).freeze
65
- end
66
-
67
- def deprecated_components
68
- @deprecated_components ||= statuses_json.select { |_, value| value == "deprecated" }.keys.tap do |deprecated_components|
69
- deprecated_components.each do |deprecated|
70
- unless COMPONENT_TO_USE_INSTEAD.key?(deprecated)
71
- raise "Please provide a component that should be used in place of #{deprecated} in COMPONENT_TO_USE_INSTEAD. "\
72
- "If there is no alternative, set the value to nil."
73
- end
74
- end
75
- end
76
- end
77
46
  end
78
47
  end
79
48
  end
data/lib/tasks/docs.rake CHANGED
@@ -359,7 +359,7 @@ namespace :docs do
359
359
  task :preview do
360
360
  registry = generate_yard_registry
361
361
 
362
- FileUtils.rm_rf("demo/test/components/previews/primer/docs/")
362
+ FileUtils.rm_rf("test/previews/primer/docs/")
363
363
 
364
364
  components = Primer::Component.descendants
365
365
 
@@ -373,7 +373,7 @@ namespace :docs do
373
373
 
374
374
  yard_example_tags = initialize_method.tags(:example)
375
375
 
376
- path = Pathname.new("demo/test/components/previews/primer/docs/#{short_name.underscore}_preview.rb")
376
+ path = Pathname.new("test/previews/primer/docs/#{short_name.underscore}_preview.rb")
377
377
  path.dirname.mkdir unless path.dirname.exist?
378
378
 
379
379
  File.open(path, "w") do |f|
@@ -386,7 +386,7 @@ namespace :docs do
386
386
  method_name = name.split("|").first.downcase.parameterize.underscore
387
387
  f.puts(" def #{method_name}; end")
388
388
  f.puts unless index == yard_example_tags.size - 1
389
- path = Pathname.new("demo/test/components/previews/primer/docs/#{short_name.underscore}_preview/#{method_name}.html.erb")
389
+ path = Pathname.new("test/previews/primer/docs/#{short_name.underscore}_preview/#{method_name}.html.erb")
390
390
  path.dirname.mkdir unless path.dirname.exist?
391
391
  File.open(path, "w") do |view_file|
392
392
  view_file.puts(code.to_s)
data/static/arguments.yml CHANGED
@@ -210,28 +210,47 @@
210
210
  type: String
211
211
  default: N/A
212
212
  description: Id of the list element.
213
- - name: with_icon
213
+ - name: visually_hide_label
214
214
  type: Boolean
215
215
  default: "`false`"
216
- description: Controls if a search icon is visible, defaults to `false`.
217
- - name: is_label_visible
218
- type: Boolean
219
- default: "`true`"
220
- description: Controls if the label is visible. If `false`, screen reader only
221
- text will be added.
222
- - name: is_clearable
216
+ description: Controls if the label is visible. If `true`, screen reader only text
217
+ will be added.
218
+ - name: show_clear_button
223
219
  type: Boolean
224
220
  default: "`false`"
225
221
  description: Adds optional clear button.
226
- - name: is_label_inline
227
- type: Boolean
228
- default: "`false`"
229
- description: Controls if the label is inline. On smaller screens, label will always
230
- become stacked.
231
222
  - name: system_arguments
232
223
  type: Hash
233
224
  default: N/A
234
225
  description: "[System arguments](/system-arguments)"
226
+ - name: size
227
+ type: Hash
228
+ default: "`:medium`"
229
+ description: Input size can be small, medium (default), or large
230
+ - name: full_width
231
+ type: Boolean
232
+ default: "`false`"
233
+ description: Input can be full-width or fit to content
234
+ - name: disabled
235
+ type: Boolean
236
+ default: "`false`"
237
+ description: Disabled input
238
+ - name: invalid
239
+ type: Boolean
240
+ default: "`false`"
241
+ description: Invalid input
242
+ - name: placeholder
243
+ type: String
244
+ default: "`nil`"
245
+ description: The placeholder text displayed within the input
246
+ - name: inset
247
+ type: Boolean
248
+ default: "`false`"
249
+ description: subtle input background color
250
+ - name: monospace
251
+ type: Boolean
252
+ default: "`false`"
253
+ description: monospace input font family
235
254
  - component: AutoCompleteItem
236
255
  source: https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/item.rb
237
256
  parameters:
@@ -247,6 +266,14 @@
247
266
  type: Boolean
248
267
  default: "`false`"
249
268
  description: Whether the item is disabled.
269
+ - name: description_variant
270
+ type: Hash
271
+ default: "`:block`"
272
+ description: Changes the description style. Allowed values are :inline, :block
273
+ - name: description
274
+ type: String
275
+ default: N/A
276
+ description: Display description text below label
250
277
  - name: system_arguments
251
278
  type: Hash
252
279
  default: N/A
@@ -1,4 +1,6 @@
1
1
  {
2
+ "Primer::Alpha::AutoComplete": "",
3
+ "Primer::Alpha::AutoComplete::Item": "",
2
4
  "Primer::Alpha::BorderBox::Header": "",
3
5
  "Primer::Alpha::ButtonMarketing": "",
4
6
  "Primer::Alpha::Layout": "",
@@ -29,6 +31,7 @@
29
31
  "Primer::ButtonGroup": "",
30
32
  "Primer::ClipboardCopy": "",
31
33
  "Primer::CloseButton": "",
34
+ "Primer::ConditionalWrapper": "",
32
35
  "Primer::Content": "",
33
36
  "Primer::CounterComponent": "",
34
37
  "Primer::DetailsComponent": "",
data/static/classes.yml CHANGED
@@ -1,4 +1,8 @@
1
1
  ---
2
+ - ".ActionList"
3
+ - ".ActionList-content"
4
+ - ".ActionList-item"
5
+ - ".ActionList-item-label"
2
6
  - ".AvatarStack"
3
7
  - ".AvatarStack--right"
4
8
  - ".AvatarStack--three-plus"
@@ -19,6 +23,19 @@
19
23
  - ".Counter"
20
24
  - ".Counter--primary"
21
25
  - ".Counter--secondary"
26
+ - ".FormControl"
27
+ - ".FormControl--fullWidth"
28
+ - ".FormControl-input"
29
+ - ".FormControl-input-leadingVisual"
30
+ - ".FormControl-input-leadingVisualWrap"
31
+ - ".FormControl-input-trailingAction"
32
+ - ".FormControl-input-wrap"
33
+ - ".FormControl-input-wrap--leadingVisual"
34
+ - ".FormControl-input-wrap--trailingAction"
35
+ - ".FormControl-inset"
36
+ - ".FormControl-label"
37
+ - ".FormControl-medium"
38
+ - ".FormControl-monospace"
22
39
  - ".Label"
23
40
  - ".Label--accent"
24
41
  - ".Label--attention"
@@ -49,6 +66,12 @@
49
66
  - ".Link--muted"
50
67
  - ".Link--primary"
51
68
  - ".Link--secondary"
69
+ - ".Overlay"
70
+ - ".Overlay--height-auto"
71
+ - ".Overlay--width-auto"
72
+ - ".Overlay-backdrop--anchor"
73
+ - ".Overlay-body"
74
+ - ".Overlay-body--paddingNone"
52
75
  - ".Popover"
53
76
  - ".Popover-message"
54
77
  - ".Popover-message--large"
@@ -82,12 +105,6 @@
82
105
  - ".UnderlineNav-item"
83
106
  - ".UnderlineNav-octicon"
84
107
  - ".anim-rotate"
85
- - ".autocomplete-body"
86
- - ".autocomplete-embedded-icon-wrap"
87
- - ".autocomplete-item"
88
- - ".autocomplete-label-inline"
89
- - ".autocomplete-label-stacked"
90
- - ".autocomplete-results"
91
108
  - ".avatar"
92
109
  - ".avatar-more"
93
110
  - ".avatar-small"
@@ -167,7 +184,6 @@
167
184
  - ".flex-justify-center"
168
185
  - ".flex-shrink-0"
169
186
  - ".float-right"
170
- - ".form-control"
171
187
  - ".gutter-condensed"
172
188
  - ".gutter-lg"
173
189
  - ".hidden-text-expander"
@@ -1,4 +1,9 @@
1
1
  {
2
+ "Primer::Alpha::AutoComplete": {
3
+ "Item": "Primer::Alpha::AutoComplete::Item"
4
+ },
5
+ "Primer::Alpha::AutoComplete::Item": {
6
+ },
2
7
  "Primer::Alpha::BorderBox::Header": {
3
8
  "TITLE_TAG_FALLBACK": "h2",
4
9
  "TITLE_TAG_OPTIONS": [
@@ -199,9 +204,24 @@
199
204
  ]
200
205
  },
201
206
  "Primer::Beta::AutoComplete": {
202
- "Item": "Primer::Beta::AutoComplete::Item"
207
+ "DEFAULT_SIZE": "medium",
208
+ "Item": "Primer::Beta::AutoComplete::Item",
209
+ "SIZE_MAPPINGS": {
210
+ "small": "FormControl-small",
211
+ "medium": "FormControl-medium",
212
+ "large": "FormControl-large"
213
+ },
214
+ "SIZE_OPTIONS": [
215
+ "small",
216
+ "medium",
217
+ "large"
218
+ ]
203
219
  },
204
220
  "Primer::Beta::AutoComplete::Item": {
221
+ "ALLOWED_DESCRIPTION_VARIANTS": [
222
+ "inline",
223
+ "block"
224
+ ]
205
225
  },
206
226
  "Primer::Beta::Avatar": {
207
227
  "DEFAULT_SHAPE": "circle",
@@ -336,6 +356,8 @@
336
356
  "submit"
337
357
  ]
338
358
  },
359
+ "Primer::ConditionalWrapper": {
360
+ },
339
361
  "Primer::Content": {
340
362
  },
341
363
  "Primer::CounterComponent": {
data/static/statuses.json CHANGED
@@ -1,4 +1,6 @@
1
1
  {
2
+ "Primer::Alpha::AutoComplete": "alpha",
3
+ "Primer::Alpha::AutoComplete::Item": "alpha",
2
4
  "Primer::Alpha::BorderBox::Header": "alpha",
3
5
  "Primer::Alpha::ButtonMarketing": "alpha",
4
6
  "Primer::Alpha::Layout": "alpha",
@@ -29,6 +31,7 @@
29
31
  "Primer::ButtonGroup": "beta",
30
32
  "Primer::ClipboardCopy": "beta",
31
33
  "Primer::CloseButton": "beta",
34
+ "Primer::ConditionalWrapper": "alpha",
32
35
  "Primer::Content": "stable",
33
36
  "Primer::CounterComponent": "beta",
34
37
  "Primer::DetailsComponent": "beta",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: primer_view_components
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.81
4
+ version: 0.0.84
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub Open Source
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-30 00:00:00.000000000 Z
11
+ date: 2022-07-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionview
@@ -170,6 +170,20 @@ dependencies:
170
170
  - - ">="
171
171
  - !ruby/object:Gem::Version
172
172
  version: '0'
173
+ - !ruby/object:Gem::Dependency
174
+ name: erblint-github
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - '='
178
+ - !ruby/object:Gem::Version
179
+ version: 0.1.0
180
+ type: :development
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - '='
185
+ - !ruby/object:Gem::Version
186
+ version: 0.1.0
173
187
  - !ruby/object:Gem::Dependency
174
188
  name: listen
175
189
  requirement: !ruby/object:Gem::Requirement
@@ -184,6 +198,20 @@ dependencies:
184
198
  - - "~>"
185
199
  - !ruby/object:Gem::Version
186
200
  version: '3.0'
201
+ - !ruby/object:Gem::Dependency
202
+ name: matrix
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: 0.4.2
208
+ type: :development
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - "~>"
213
+ - !ruby/object:Gem::Version
214
+ version: 0.4.2
187
215
  - !ruby/object:Gem::Dependency
188
216
  name: minitest
189
217
  requirement: !ruby/object:Gem::Requirement
@@ -366,7 +394,7 @@ dependencies:
366
394
  - - "~>"
367
395
  - !ruby/object:Gem::Version
368
396
  version: 0.9.25
369
- description:
397
+ description:
370
398
  email:
371
399
  - opensource+primer_view_components@github.com
372
400
  executables: []
@@ -378,6 +406,9 @@ files:
378
406
  - README.md
379
407
  - app/assets/javascripts/primer_view_components.js
380
408
  - app/assets/javascripts/primer_view_components.js.map
409
+ - app/components/primer/alpha/auto_complete.rb
410
+ - app/components/primer/alpha/auto_complete/auto_complete.html.erb
411
+ - app/components/primer/alpha/auto_complete/item.rb
381
412
  - app/components/primer/alpha/border_box/header.html.erb
382
413
  - app/components/primer/alpha/border_box/header.rb
383
414
  - app/components/primer/alpha/button_marketing.rb
@@ -402,6 +433,7 @@ files:
402
433
  - app/components/primer/beta/auto_complete/auto_complete.html.erb
403
434
  - app/components/primer/beta/auto_complete/auto_complete.js
404
435
  - app/components/primer/beta/auto_complete/auto_complete.ts
436
+ - app/components/primer/beta/auto_complete/item.html.erb
405
437
  - app/components/primer/beta/auto_complete/item.rb
406
438
  - app/components/primer/beta/avatar.rb
407
439
  - app/components/primer/beta/avatar_stack.html.erb
@@ -431,6 +463,7 @@ files:
431
463
  - app/components/primer/clipboard_copy_component.ts
432
464
  - app/components/primer/close_button.rb
433
465
  - app/components/primer/component.rb
466
+ - app/components/primer/conditional_wrapper.rb
434
467
  - app/components/primer/content.rb
435
468
  - app/components/primer/counter_component.rb
436
469
  - app/components/primer/details_component.html.erb
@@ -536,8 +569,10 @@ files:
536
569
  - lib/primer/view_components/linters/button_component_migration_counter.rb
537
570
  - lib/primer/view_components/linters/clipboard_copy_component_migration_counter.rb
538
571
  - lib/primer/view_components/linters/close_button_component_migration_counter.rb
572
+ - lib/primer/view_components/linters/deprecated_components_counter.rb
539
573
  - lib/primer/view_components/linters/disallow_action_list.rb
540
574
  - lib/primer/view_components/linters/flash_migration_counter.rb
575
+ - lib/primer/view_components/linters/helpers/deprecated_components_helpers.rb
541
576
  - lib/primer/view_components/linters/helpers/rubocop_helpers.rb
542
577
  - lib/primer/view_components/linters/label_component_migration_counter.rb
543
578
  - lib/primer/view_components/linters/subhead_component_migration_counter.rb
@@ -580,7 +615,7 @@ licenses:
580
615
  - MIT
581
616
  metadata:
582
617
  allowed_push_host: https://rubygems.org
583
- post_install_message:
618
+ post_install_message:
584
619
  rdoc_options: []
585
620
  require_paths:
586
621
  - lib
@@ -588,15 +623,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
588
623
  requirements:
589
624
  - - ">="
590
625
  - !ruby/object:Gem::Version
591
- version: 2.5.0
626
+ version: 2.6.0
592
627
  required_rubygems_version: !ruby/object:Gem::Requirement
593
628
  requirements:
594
629
  - - ">="
595
630
  - !ruby/object:Gem::Version
596
631
  version: '0'
597
632
  requirements: []
598
- rubygems_version: 3.2.22
599
- signing_key:
633
+ rubygems_version: 3.1.6
634
+ signing_key:
600
635
  specification_version: 4
601
636
  summary: ViewComponents for the Primer Design System
602
637
  test_files: []