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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +38 -0
- data/README.md +1 -1
- data/app/assets/javascripts/primer_view_components.js +1 -1
- data/app/assets/javascripts/primer_view_components.js.map +1 -1
- data/app/components/primer/alpha/auto_complete/auto_complete.html.erb +24 -0
- data/app/components/primer/alpha/auto_complete/item.rb +46 -0
- data/app/components/primer/alpha/auto_complete.rb +158 -0
- data/app/components/primer/alpha/tool-tip-element.js +1 -0
- data/app/components/primer/alpha/tool-tip-element.ts +1 -0
- data/app/components/primer/beta/auto_complete/auto_complete.html.erb +21 -17
- data/app/components/primer/beta/auto_complete/item.html.erb +21 -0
- data/app/components/primer/beta/auto_complete/item.rb +42 -6
- data/app/components/primer/beta/auto_complete.rb +93 -55
- data/app/components/primer/component.rb +1 -1
- data/app/components/primer/conditional_wrapper.rb +36 -0
- data/app/components/primer/layout_component.html.erb +1 -0
- data/lib/primer/view_components/linters/deprecated_components_counter.rb +49 -0
- data/lib/primer/view_components/linters/helpers/deprecated_components_helpers.rb +46 -0
- data/lib/primer/view_components/version.rb +1 -1
- data/lib/rubocop/config/default.yml +2 -26
- data/lib/rubocop/cop/primer/deprecated_arguments.rb +10 -0
- data/lib/rubocop/cop/primer/deprecated_components.rb +2 -33
- data/lib/tasks/docs.rake +3 -3
- data/static/arguments.yml +40 -13
- data/static/audited_at.json +3 -0
- data/static/classes.yml +23 -7
- data/static/constants.json +23 -1
- data/static/statuses.json +3 -0
- 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
|
@@ -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
|
@@ -1,33 +1,9 @@
|
|
1
1
|
require:
|
2
2
|
- rubocop/cop/primer
|
3
|
-
- rubocop-rails
|
4
3
|
|
5
|
-
|
6
|
-
|
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
|
-
|
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("
|
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("
|
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("
|
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:
|
213
|
+
- name: visually_hide_label
|
214
214
|
type: Boolean
|
215
215
|
default: "`false`"
|
216
|
-
description: Controls if
|
217
|
-
|
218
|
-
|
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
|
data/static/audited_at.json
CHANGED
@@ -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"
|
data/static/constants.json
CHANGED
@@ -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
|
-
"
|
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.
|
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-
|
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.
|
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.
|
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: []
|